├── .gitattributes ├── .gitignore ├── .gitmodules ├── .vs ├── affs.vcxproj ├── affs.vcxproj.filters ├── affs.vcxproj.user ├── bfs.vcxproj ├── bfs.vcxproj.filters ├── bfs.vcxproj.user ├── btrfs.vcxproj ├── btrfs.vcxproj.filters ├── btrfs.vcxproj.user ├── efifs.vcxproj ├── efifs.vcxproj.filters ├── efifs.vcxproj.user ├── exfat.vcxproj ├── exfat.vcxproj.filters ├── exfat.vcxproj.user ├── ext2.vcxproj ├── ext2.vcxproj.filters ├── ext2.vcxproj.user ├── f2fs.vcxproj ├── f2fs.vcxproj.filters ├── f2fs.vcxproj.user ├── gnu-efi.vcxproj ├── gnu-efi.vcxproj.filters ├── gnu-efi.vcxproj.user ├── grub.vcxproj ├── grub.vcxproj.filters ├── grub.vcxproj.user ├── hfs.vcxproj ├── hfs.vcxproj.filters ├── hfs.vcxproj.user ├── hfsplus.vcxproj ├── hfsplus.vcxproj.filters ├── hfsplus.vcxproj.user ├── iso9660.vcxproj ├── iso9660.vcxproj.filters ├── iso9660.vcxproj.user ├── jfs.vcxproj ├── jfs.vcxproj.filters ├── jfs.vcxproj.user ├── nilfs2.vcxproj ├── nilfs2.vcxproj.filters ├── nilfs2.vcxproj.user ├── ntfs.vcxproj ├── ntfs.vcxproj.filters ├── ntfs.vcxproj.user ├── reiserfs.vcxproj ├── reiserfs.vcxproj.filters ├── reiserfs.vcxproj.user ├── sfs.vcxproj ├── sfs.vcxproj.filters ├── sfs.vcxproj.user ├── udf.vcxproj ├── udf.vcxproj.filters ├── udf.vcxproj.user ├── ufs.vcxproj ├── ufs.vcxproj.filters ├── ufs.vcxproj.user ├── ufs2.vcxproj ├── ufs2.vcxproj.filters ├── ufs2.vcxproj.user ├── xfs.vcxproj ├── xfs.vcxproj.filters ├── xfs.vcxproj.user ├── zfs.vcxproj ├── zfs.vcxproj.filters └── zfs.vcxproj.user ├── 0000-GRUB-fixes.patch ├── ChangeLog.txt ├── CompilerIntrinsicsLib ├── CRT │ └── Ia32 │ │ ├── License.txt │ │ ├── Readme.txt │ │ ├── lldiv.c │ │ ├── lldvrm.c │ │ ├── llmul.c │ │ ├── llrem.c │ │ ├── llshl.c │ │ ├── llshr.c │ │ ├── ulldiv.c │ │ ├── ulldvrm.c │ │ ├── ullrem.c │ │ └── ullshr.c ├── CompilerIntrinsicsLib.inf ├── memcmp.c ├── memcpy.c ├── memmove.c └── memset.c ├── EfiFsPkg.dec ├── EfiFsPkg.dsc ├── EfiFsPkg.uni ├── EfiFsPkg ├── Affs.inf ├── Afs.inf ├── Bfs.inf ├── Btrfs.inf ├── Cbfs.inf ├── Cpio.inf ├── CpioBe.inf ├── ExFat.inf ├── Ext2.inf ├── F2fs.inf ├── Fat.inf ├── Hfs.inf ├── HfsPlus.inf ├── Iso9660.inf ├── Jfs.inf ├── Minix.inf ├── Minix2.inf ├── Minix2Be.inf ├── Minix3.inf ├── Minix3Be.inf ├── MinixBe.inf ├── NewC.inf ├── NilFs2.inf ├── Ntfs.inf ├── Odc.inf ├── ProcFs.inf ├── ReiserFs.inf ├── RomFs.inf ├── Sfs.inf ├── SquashFs.inf ├── Tar.inf ├── Udf.inf ├── Ufs.inf ├── Ufs2.inf ├── UfsBe.inf ├── Xfs.inf └── Zfs.inf ├── EfiFsPkgExtra.uni ├── LICENSE ├── Make.common ├── Makefile ├── README.md ├── _newfs.sh ├── config.h ├── debug.vbs ├── edk2_build_drivers.cmd ├── efifs.sln ├── set_grub_cpu.cmd ├── set_grub_cpu.sh └── src ├── Makefile ├── driver.c ├── driver.h ├── file.c ├── grub.c ├── grub_file.c ├── logging.c ├── missing.c ├── path.c ├── this.c └── utf8.c /.gitattributes: -------------------------------------------------------------------------------- 1 | # Set the default behavior, in case people don't have core.autocrlf set. 2 | * text=auto 3 | # git apply may fail unless it is fed LF terminated patches... 4 | *.patch eol=lf 5 | *.sh eol=lf 6 | *.c text 7 | *.h text 8 | *.md text 9 | Makefile text 10 | Make.common text 11 | Make.gnuefi text 12 | 13 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.db* 2 | *.efi 3 | *.fd 4 | *.img 5 | *.ipch 6 | *.iso 7 | *.o 8 | *.opendb 9 | *.opensdf 10 | *.sdf 11 | *.suo 12 | *.vhd 13 | *.zip 14 | arm 15 | aa64 16 | ia32 17 | image 18 | x64 19 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "grub"] 2 | path = grub 3 | url = git://git.savannah.gnu.org/grub.git 4 | ignore = dirty 5 | [submodule "gnu-efi"] 6 | path = gnu-efi 7 | url = git://git.code.sf.net/p/gnu-efi/code 8 | ignore = dirty 9 | -------------------------------------------------------------------------------- /.vs/affs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/affs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/bfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/bfs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/btrfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | Source Files 25 | 26 | 27 | 28 | 29 | Resource Files 30 | 31 | 32 | 33 | 34 | Header Files 35 | 36 | 37 | Header Files 38 | 39 | 40 | -------------------------------------------------------------------------------- /.vs/btrfs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/efifs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | 14 | 15 | Source Files 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | Source Files 25 | 26 | 27 | Source Files 28 | 29 | 30 | Source Files 31 | 32 | 33 | Source Files 34 | 35 | 36 | 37 | 38 | Header Files 39 | 40 | 41 | -------------------------------------------------------------------------------- /.vs/efifs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /.vs/exfat.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/exfat.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/ext2.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/ext2.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/f2fs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/f2fs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/gnu-efi.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /.vs/grub.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | 14 | 15 | Source Files 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | Source Files 25 | 26 | 27 | Source Files 28 | 29 | 30 | Source Files 31 | 32 | 33 | Source Files 34 | 35 | 36 | 37 | 38 | Header Files 39 | 40 | 41 | -------------------------------------------------------------------------------- /.vs/grub.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /.vs/hfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | Header Files 35 | 36 | 37 | -------------------------------------------------------------------------------- /.vs/hfs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/hfsplus.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | Source Files 25 | 26 | 27 | Source Files 28 | 29 | 30 | 31 | 32 | Resource Files 33 | 34 | 35 | 36 | 37 | Header Files 38 | 39 | 40 | Header Files 41 | 42 | 43 | -------------------------------------------------------------------------------- /.vs/hfsplus.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/iso9660.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/iso9660.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/jfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/jfs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/nilfs2.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/nilfs2.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/ntfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | Source Files 25 | 26 | 27 | 28 | 29 | Resource Files 30 | 31 | 32 | 33 | 34 | Header Files 35 | 36 | 37 | -------------------------------------------------------------------------------- /.vs/ntfs.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | $(SystemRoot)\System32\wscript 5 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 6 | WindowsLocalDebugger 7 | $(SolutionDir) 8 | 9 | 10 | $(SystemRoot)\System32\wscript 11 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 12 | WindowsLocalDebugger 13 | $(SolutionDir) 14 | 15 | 16 | $(SystemRoot)\System32\wscript 17 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 18 | WindowsLocalDebugger 19 | $(SolutionDir) 20 | 21 | 22 | $(SystemRoot)\System32\wscript 23 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 24 | WindowsLocalDebugger 25 | $(SolutionDir) 26 | 27 | 28 | $(SystemRoot)\System32\wscript 29 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 30 | WindowsLocalDebugger 31 | $(SolutionDir) 32 | 33 | 34 | $(SystemRoot)\System32\wscript 35 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 36 | WindowsLocalDebugger 37 | $(SolutionDir) 38 | 39 | 40 | $(SystemRoot)\System32\wscript 41 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 42 | WindowsLocalDebugger 43 | $(SolutionDir) 44 | 45 | 46 | $(SystemRoot)\System32\wscript 47 | //d debug.vbs "$(Configuration)" "$(ProjectName)" "$(TargetPath)" "$(PlatformShortName)" 48 | WindowsLocalDebugger 49 | $(SolutionDir) 50 | 51 | -------------------------------------------------------------------------------- /.vs/reiserfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/sfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/udf.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | Header Files 35 | 36 | 37 | -------------------------------------------------------------------------------- /.vs/ufs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/ufs2.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /.vs/xfs.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h;hh;hpp;hxx;hm;inl;inc;xsd 11 | 12 | 13 | {b1c3b304-e868-4b07-988c-36ad7bc57300} 14 | 15 | 16 | 17 | 18 | Source Files 19 | 20 | 21 | Source Files 22 | 23 | 24 | 25 | 26 | Resource Files 27 | 28 | 29 | 30 | 31 | Header Files 32 | 33 | 34 | -------------------------------------------------------------------------------- /ChangeLog.txt: -------------------------------------------------------------------------------- 1 | For detailed information about the changes below, please see the git log or 2 | visit: https://github.com/pbatard/efifs 3 | 4 | v1.3 (2018.04.25) 5 | * Fix F2FS driver bug (MSVC only) that was introduced in v1.2 6 | * Remove custom EDK2 patches for VS2017 and ARM/ARM64 support (now integrated upstream) 7 | * Remove custom GRUB patches for F2FS support (now integrated upstream) 8 | * Update GRUB and gnu-efi to latest 9 | 10 | v1.2 (2017.11.14) 11 | * Add EDK2 compilation support 12 | * Add Visual Studio 2017 ARM64 compilation support 13 | * Update GRUB and gnu-efi to latest 14 | 15 | v1.1 (2016.12.28) 16 | * Add ARM64 platform support 17 | * Add F2FS support (EXPERIMENTAL) 18 | * Internal improvements 19 | * Update GRUB and gnu-efi to latest 20 | 21 | v1.0 (2016.07.14) 22 | * Add Clang/C2 support in Visual Studio 23 | * Use assembly aliases for memset/memcpy intrinsics 24 | * Update GRUB and gnu-efi to latest 25 | 26 | v0.9 (2016.04.22) 27 | * Add ARM (32-bit) support 28 | * Fix architecture specific compilation issues 29 | * Update GRUB and gnu-efi to latest 30 | 31 | v0.8 (2016.02.01) 32 | * Add x86_32 (ia32) 32-bit drivers 33 | * Switch to Visual Studio 2015 34 | * Update OVMF download 35 | * Update GRUB and gnu-efi to latest 36 | 37 | v0.7 (2014.12.17) 38 | * Add Visual Studio 2013 build support 39 | * Switch to using Visual Studio 2013 to build binaries - the drivers are now much smaller! 40 | * Add FFS/UFS support (MSVC only) 41 | * _ALL_ drivers have now been tested. See MSVC debug tests. 42 | * Updated GRUB dependency to latest 43 | 44 | v0.6.1 (2014-07-28): 45 | * Add ZFS support 46 | * Add ISO9660 and UDF support 47 | * Add nilfs and compressed HFS+ support 48 | * Add ext2/ext3/ext4 and btrfs support (slow!!) 49 | * Fix an issue when listing root multiple times 50 | 51 | v0.6 (2014-07-10): 52 | * Add compressed NTFS support 53 | * Add support for AFFS (Amiga Fast FileSystem), BFS (BeOS FS), JFS, HFS, HFS+, 54 | SFS (Amiga Smart FileSystem), ReiserFS and UFS (v2) 55 | * Many internal improvements 56 | 57 | v0.5 (2014-07-01): 58 | * Add XFS and exFAT 59 | * Fix access for card readers 60 | 61 | v0.5 (2014-06-30): 62 | * Fix copying of files 63 | 64 | v0.4 (2014-06-29): 65 | * Initial ALPHA release (NTFS only) 66 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/License.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2019, TianoCore and contributors. All rights reserved. 2 | 3 | SPDX-License-Identifier: BSD-2-Clause-Patent 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | 1. Redistributions of source code must retain the above copyright notice, 9 | this list of conditions and the following disclaimer. 10 | 11 | 2. Redistributions in binary form must reproduce the above copyright notice, 12 | this list of conditions and the following disclaimer in the documentation 13 | and/or other materials provided with the distribution. 14 | 15 | Subject to the terms and conditions of this license, each copyright holder 16 | and contributor hereby grants to those receiving rights under this license 17 | a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable 18 | (except for failure to satisfy the conditions of this license) patent 19 | license to make, have made, use, offer to sell, sell, import, and otherwise 20 | transfer this software, where such license applies only to those patent 21 | claims, already acquired or hereafter acquired, licensable by such copyright 22 | holder or contributor that are necessarily infringed by: 23 | 24 | (a) their Contribution(s) (the licensed copyrights of copyright holders and 25 | non-copyrightable additions of contributors, in source or binary form) 26 | alone; or 27 | 28 | (b) combination of their Contribution(s) with the work of authorship to 29 | which such Contribution(s) was added by such copyright holder or 30 | contributor, if, at the time the Contribution is added, such addition 31 | causes such combination to be necessarily infringed. The patent license 32 | shall not apply to any other combinations which include the 33 | Contribution. 34 | 35 | Except as expressly stated above, no rights or licenses from any copyright 36 | holder or contributor is granted under this license, whether expressly, by 37 | implication, estoppel or otherwise. 38 | 39 | DISCLAIMER 40 | 41 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 42 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 43 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 44 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE 45 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 46 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 47 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 48 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 49 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 50 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 51 | POSSIBILITY OF SUCH DAMAGE. 52 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/Readme.txt: -------------------------------------------------------------------------------- 1 | These files were taken from the edk2-libc project: 2 | https://github.com/tianocore/edk2-libc/tree/master 3 | 4 | They are licensed under a BSD-2-Clause-Patent license. -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/lldiv.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit signed value with a 64-bit signed value and returns 22 | * a 64-bit signed result. 23 | */ 24 | __declspec(naked) void __cdecl _alldiv (void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivS64x64Remainder() routine 28 | // INT64 29 | // EFIAPI 30 | // DivS64x64Remainder ( 31 | // IN UINT64 Dividend, 32 | // IN UINT64 Divisor, 33 | // OUT UINT64 *Remainder OPTIONAL 34 | // ) 35 | // 36 | _asm { 37 | 38 | ;Entry: 39 | ; Arguments are passed on the stack: 40 | ; 1st pushed: divisor (QWORD) 41 | ; 2nd pushed: dividend (QWORD) 42 | ; 43 | ;Exit: 44 | ; EDX:EAX contains the quotient (dividend/divisor) 45 | ; NOTE: this routine removes the parameters from the stack. 46 | ; 47 | ; Original local stack when calling _alldiv 48 | ; ----------------- 49 | ; | | 50 | ; |---------------| 51 | ; | | 52 | ; |-- Divisor --| 53 | ; | | 54 | ; |---------------| 55 | ; | | 56 | ; |-- Dividend --| 57 | ; | | 58 | ; |---------------| 59 | ; | ReturnAddr** | 60 | ; ESP---->|---------------| 61 | ; 62 | 63 | ; 64 | ; Set up the local stack for NULL Reminder pointer 65 | ; 66 | xor eax, eax 67 | push eax 68 | 69 | ; 70 | ; Set up the local stack for Divisor parameter 71 | ; 72 | mov eax, [esp + 20] 73 | push eax 74 | mov eax, [esp + 20] 75 | push eax 76 | 77 | ; 78 | ; Set up the local stack for Dividend parameter 79 | ; 80 | mov eax, [esp + 20] 81 | push eax 82 | mov eax, [esp + 20] 83 | push eax 84 | 85 | ; 86 | ; Call native DivS64x64Remainder of BaseLib 87 | ; 88 | call DivS64x64Remainder 89 | 90 | ; 91 | ; Adjust stack 92 | ; 93 | add esp, 20 94 | 95 | ret 16 96 | } 97 | } 98 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/lldvrm.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit signed value by another 64-bit signed value and returns 22 | * the 64-bit signed result and the 64-bit signed remainder. 23 | */ 24 | __declspec(naked) void __cdecl _alldvrm(void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivS64x64Remainder() routine 28 | // INT64 29 | // EFIAPI 30 | // DivS64x64Remainder ( 31 | // IN INT64 Dividend, 32 | // IN INT64 Divisor, 33 | // OUT INT64 *Remainder 34 | // ) 35 | // 36 | _asm { 37 | ; Original local stack when calling _alldvrm 38 | ; ----------------- 39 | ; | | 40 | ; |---------------| 41 | ; | | 42 | ; |-- Divisor --| 43 | ; | | 44 | ; |---------------| 45 | ; | | 46 | ; |-- Dividend --| 47 | ; | | 48 | ; |---------------| 49 | ; | ReturnAddr** | 50 | ; ESP---->|---------------| 51 | ; 52 | ; 53 | ; On Exit: 54 | ; EDX:EAX contains the quotient (dividend/divisor) 55 | ; EBX:ECX contains the remainder (divided % divisor) 56 | ; NOTE: this routine removes the parameters from the stack. 57 | ; 58 | 59 | ; 60 | ; Set up the local stack for Reminder pointer 61 | ; 62 | sub esp, 8 63 | push esp 64 | 65 | ; 66 | ; Set up the local stack for Divisor parameter 67 | ; 68 | mov eax, [esp + 28] 69 | push eax 70 | mov eax, [esp + 28] 71 | push eax 72 | 73 | ; 74 | ; Set up the local stack for Dividend parameter 75 | ; 76 | mov eax, [esp + 28] 77 | push eax 78 | mov eax, [esp + 28] 79 | push eax 80 | 81 | ; 82 | ; Call native DivS64x64Remainder of BaseLib 83 | ; 84 | call DivS64x64Remainder 85 | 86 | ; 87 | ; EDX:EAX contains the quotient (dividend/divisor) 88 | ; Put the Remainder in EBX:ECX 89 | ; 90 | mov ecx, [esp + 20] 91 | mov ebx, [esp + 24] 92 | 93 | ; 94 | ; Adjust stack 95 | ; 96 | add esp, 28 97 | 98 | ret 16 99 | } 100 | } 101 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/llmul.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | /* 20 | * Multiplies a 64-bit signed or unsigned value by a 64-bit signed or unsigned value 21 | * and returns a 64-bit result. 22 | */ 23 | __declspec(naked) void __cdecl _allmul (void) 24 | { 25 | // 26 | // Wrapper Implementation over EDKII MultS64x64() routine 27 | // INT64 28 | // EFIAPI 29 | // MultS64x64 ( 30 | // IN INT64 Multiplicand, 31 | // IN INT64 Multiplier 32 | // ) 33 | // 34 | _asm { 35 | ; Original local stack when calling _allmul 36 | ; ----------------- 37 | ; | | 38 | ; |---------------| 39 | ; | | 40 | ; |--Multiplier --| 41 | ; | | 42 | ; |---------------| 43 | ; | | 44 | ; |--Multiplicand-| 45 | ; | | 46 | ; |---------------| 47 | ; | ReturnAddr** | 48 | ; ESP---->|---------------| 49 | ; 50 | 51 | ; 52 | ; Set up the local stack for Multiplicand parameter 53 | ; 54 | mov eax, [esp + 16] 55 | push eax 56 | mov eax, [esp + 16] 57 | push eax 58 | 59 | ; 60 | ; Set up the local stack for Multiplier parameter 61 | ; 62 | mov eax, [esp + 16] 63 | push eax 64 | mov eax, [esp + 16] 65 | push eax 66 | 67 | ; 68 | ; Call native MulS64x64 of BaseLib 69 | ; 70 | call MultS64x64 71 | 72 | ; 73 | ; Adjust stack 74 | ; 75 | add esp, 16 76 | 77 | ret 16 78 | } 79 | } 80 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/llrem.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit signed value by another 64-bit signed value and returns 22 | * the 64-bit signed remainder. 23 | */ 24 | __declspec(naked) void __cdecl _allrem(void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivS64x64Remainder() routine 28 | // UINT64 29 | // EFIAPI 30 | // DivS64x64Remainder ( 31 | // IN UINT64 Dividend, 32 | // IN UINT64 Divisor, 33 | // OUT UINT64 *Remainder 34 | // ) 35 | // 36 | _asm { 37 | ; Original local stack when calling _allrem 38 | ; ----------------- 39 | ; | | 40 | ; |---------------| 41 | ; | | 42 | ; |-- Divisor --| 43 | ; | | 44 | ; |---------------| 45 | ; | | 46 | ; |-- Dividend --| 47 | ; | | 48 | ; |---------------| 49 | ; | ReturnAddr** | 50 | ; ESP---->|---------------| 51 | ; 52 | 53 | ; 54 | ; Set up the local stack for Reminder pointer 55 | ; 56 | sub esp, 8 57 | push esp 58 | 59 | ; 60 | ; Set up the local stack for Divisor parameter 61 | ; 62 | mov eax, [esp + 28] 63 | push eax 64 | mov eax, [esp + 28] 65 | push eax 66 | 67 | ; 68 | ; Set up the local stack for Dividend parameter 69 | ; 70 | mov eax, [esp + 28] 71 | push eax 72 | mov eax, [esp + 28] 73 | push eax 74 | 75 | ; 76 | ; Call native DivS64x64Remainder of BaseLib 77 | ; 78 | call DivS64x64Remainder 79 | 80 | ; 81 | ; Put the Reminder in EDX:EAX as return value 82 | ; 83 | mov eax, [esp + 20] 84 | mov edx, [esp + 24] 85 | 86 | ; 87 | ; Adjust stack 88 | ; 89 | add esp, 28 90 | 91 | ret 16 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/llshl.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | 18 | /* 19 | * Shifts a 64-bit signed value left by a particular number of bits. 20 | */ 21 | __declspec(naked) void __cdecl _allshl (void) 22 | { 23 | _asm { 24 | ; 25 | ; Handle shifting of 64 or more bits (return 0) 26 | ; 27 | cmp cl, 64 28 | jae short ReturnZero 29 | 30 | ; 31 | ; Handle shifting of between 0 and 31 bits 32 | ; 33 | cmp cl, 32 34 | jae short More32 35 | shld edx, eax, cl 36 | shl eax, cl 37 | ret 38 | 39 | ; 40 | ; Handle shifting of between 32 and 63 bits 41 | ; 42 | More32: 43 | mov edx, eax 44 | xor eax, eax 45 | and cl, 31 46 | shl edx, cl 47 | ret 48 | 49 | ReturnZero: 50 | xor eax,eax 51 | xor edx,edx 52 | ret 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/llshr.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | 18 | /* 19 | * Shifts a 64-bit signed value right by a particular number of bits. 20 | */ 21 | __declspec(naked) void __cdecl _allshr (void) 22 | { 23 | _asm { 24 | ; 25 | ; Handle shifts of 64 bits or more (if shifting 64 bits or more, the result 26 | ; depends only on the high order bit of edx). 27 | ; 28 | cmp cl,64 29 | jae short SIGNRETURN 30 | 31 | ; 32 | ; Handle shifts of between 0 and 31 bits 33 | ; 34 | cmp cl, 32 35 | jae short MORE32 36 | shrd eax,edx,cl 37 | sar edx,cl 38 | ret 39 | 40 | ; 41 | ; Handle shifts of between 32 and 63 bits 42 | ; 43 | MORE32: 44 | mov eax,edx 45 | sar edx,31 46 | and cl,31 47 | sar eax,cl 48 | ret 49 | 50 | ; 51 | ; Return double precision 0 or -1, depending on the sign of edx 52 | ; 53 | SIGNRETURN: 54 | sar edx,31 55 | mov eax,edx 56 | ret 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/ulldiv.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit unsigned value with a 64-bit unsigned value and returns 22 | * a 64-bit unsigned result. 23 | */ 24 | __declspec(naked) void __cdecl _aulldiv (void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivU64x64Reminder() routine 28 | // UINT64 29 | // EFIAPI 30 | // DivU64x64Remainder ( 31 | // IN UINT64 Dividend, 32 | // IN UINT64 Divisor, 33 | // OUT UINT64 *Remainder OPTIONAL 34 | // ) 35 | // 36 | _asm { 37 | 38 | ; Original local stack when calling _aulldiv 39 | ; ----------------- 40 | ; | | 41 | ; |---------------| 42 | ; | | 43 | ; |-- Divisor --| 44 | ; | | 45 | ; |---------------| 46 | ; | | 47 | ; |-- Dividend --| 48 | ; | | 49 | ; |---------------| 50 | ; | ReturnAddr** | 51 | ; ESP---->|---------------| 52 | ; 53 | 54 | ; 55 | ; Set up the local stack for NULL Reminder pointer 56 | ; 57 | xor eax, eax 58 | push eax 59 | 60 | ; 61 | ; Set up the local stack for Divisor parameter 62 | ; 63 | mov eax, [esp + 20] 64 | push eax 65 | mov eax, [esp + 20] 66 | push eax 67 | 68 | ; 69 | ; Set up the local stack for Dividend parameter 70 | ; 71 | mov eax, [esp + 20] 72 | push eax 73 | mov eax, [esp + 20] 74 | push eax 75 | 76 | ; 77 | ; Call native DivU64x64Remainder of BaseLib 78 | ; 79 | call DivU64x64Remainder 80 | 81 | ; 82 | ; Adjust stack 83 | ; 84 | add esp, 20 85 | 86 | ret 16 87 | } 88 | } 89 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/ulldvrm.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit signed value by another 64-bit signed value and returns 22 | * the 64-bit signed result and the 64-bit signed remainder. 23 | */ 24 | __declspec(naked) void __cdecl _aulldvrm(void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivU64x64Remainder() routine 28 | // UINT64 29 | // EFIAPI 30 | // DivU64x64Remainder ( 31 | // IN UINT64 Dividend, 32 | // IN UINT64 Divisor, 33 | // OUT UINT64 *Remainder 34 | // ) 35 | // 36 | _asm { 37 | ; Original local stack when calling _aulldvrm 38 | ; ----------------- 39 | ; | | 40 | ; |---------------| 41 | ; | | 42 | ; |-- Divisor --| 43 | ; | | 44 | ; |---------------| 45 | ; | | 46 | ; |-- Dividend --| 47 | ; | | 48 | ; |---------------| 49 | ; | ReturnAddr** | 50 | ; ESP---->|---------------| 51 | ; 52 | ; 53 | ; On Exit: 54 | ; EDX:EAX contains the quotient (dividend/divisor) 55 | ; EBX:ECX contains the remainder (divided % divisor) 56 | ; NOTE: this routine removes the parameters from the stack. 57 | ; 58 | 59 | ; 60 | ; Set up the local stack for Remainder pointer 61 | ; 62 | sub esp, 8 63 | push esp 64 | 65 | ; 66 | ; Set up the local stack for Divisor parameter 67 | ; 68 | mov eax, [esp + 28] 69 | push eax 70 | mov eax, [esp + 28] 71 | push eax 72 | 73 | ; 74 | ; Set up the local stack for Dividend parameter 75 | ; 76 | mov eax, [esp + 28] 77 | push eax 78 | mov eax, [esp + 28] 79 | push eax 80 | 81 | ; 82 | ; Call native DivU64x64Remainder of BaseLib 83 | ; 84 | call DivU64x64Remainder 85 | 86 | ; 87 | ; EDX:EAX contains the quotient (dividend/divisor) 88 | ; Put the Remainder in EBX:ECX 89 | ; 90 | mov ecx, [esp + 20] 91 | mov ebx, [esp + 24] 92 | 93 | ; 94 | ; Adjust stack 95 | ; 96 | add esp, 28 97 | 98 | ret 16 99 | } 100 | } 101 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/ullrem.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | #include 18 | 19 | 20 | /* 21 | * Divides a 64-bit unsigned value by another 64-bit unsigned value and returns 22 | * the 64-bit unsigned remainder. 23 | */ 24 | __declspec(naked) void __cdecl _aullrem(void) 25 | { 26 | // 27 | // Wrapper Implementation over EDKII DivU64x64Remainder() routine 28 | // UINT64 29 | // EFIAPI 30 | // DivU64x64Remainder ( 31 | // IN UINT64 Dividend, 32 | // IN UINT64 Divisor, 33 | // OUT UINT64 *Remainder OPTIONAL 34 | // ) 35 | // 36 | _asm { 37 | ; Original local stack when calling _aullrem 38 | ; ----------------- 39 | ; | | 40 | ; |---------------| 41 | ; | | 42 | ; |-- Divisor --| 43 | ; | | 44 | ; |---------------| 45 | ; | | 46 | ; |-- Dividend --| 47 | ; | | 48 | ; |---------------| 49 | ; | ReturnAddr** | 50 | ; ESP---->|---------------| 51 | ; 52 | 53 | ; 54 | ; Set up the local stack for Reminder pointer 55 | ; 56 | sub esp, 8 57 | push esp 58 | 59 | ; 60 | ; Set up the local stack for Divisor parameter 61 | ; 62 | mov eax, [esp + 28] 63 | push eax 64 | mov eax, [esp + 28] 65 | push eax 66 | 67 | ; 68 | ; Set up the local stack for Dividend parameter 69 | ; 70 | mov eax, [esp + 28] 71 | push eax 72 | mov eax, [esp + 28] 73 | push eax 74 | 75 | ; 76 | ; Call native DivU64x64Remainder of BaseLib 77 | ; 78 | call DivU64x64Remainder 79 | 80 | ; 81 | ; Put the Reminder in EDX:EAX as return value 82 | ; 83 | mov eax, [esp + 20] 84 | mov edx, [esp + 24] 85 | 86 | ; 87 | ; Adjust stack 88 | ; 89 | add esp, 28 90 | 91 | ret 16 92 | } 93 | } 94 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CRT/Ia32/ullshr.c: -------------------------------------------------------------------------------- 1 | /** @file 2 | 64-bit Math Worker Function. 3 | The 32-bit versions of C compiler generate calls to library routines 4 | to handle 64-bit math. These functions use non-standard calling conventions. 5 | 6 | Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.
7 | This program and the accompanying materials are licensed and made available 8 | under the terms and conditions of the BSD License which accompanies this 9 | distribution. The full text of the license may be found at 10 | http://opensource.org/licenses/bsd-license.php. 11 | 12 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 13 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 14 | 15 | **/ 16 | 17 | 18 | /* 19 | * Shifts a 64-bit unsigned value right by a certain number of bits. 20 | */ 21 | __declspec(naked) void __cdecl _aullshr (void) 22 | { 23 | _asm { 24 | ; 25 | ; Checking: Only handle 64bit shifting or more 26 | ; 27 | cmp cl, 64 28 | jae _Exit 29 | 30 | ; 31 | ; Handle shifting between 0 and 31 bits 32 | ; 33 | cmp cl, 32 34 | jae More32 35 | shrd eax, edx, cl 36 | shr edx, cl 37 | ret 38 | 39 | ; 40 | ; Handle shifting of 32-63 bits 41 | ; 42 | More32: 43 | mov eax, edx 44 | xor edx, edx 45 | and cl, 31 46 | shr eax, cl 47 | ret 48 | 49 | ; 50 | ; Invalid number (less then 32bits), return 0 51 | ; 52 | _Exit: 53 | xor eax, eax 54 | xor edx, edx 55 | ret 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf: -------------------------------------------------------------------------------- 1 | #/*++ 2 | # 3 | # Copyright (c) 2017-2019, Pete Batard. 4 | # 5 | # This program and the accompanying materials 6 | # are licensed and made available under the terms and conditions of the BSD License 7 | # which accompanies this distribution. The full text of the license may be found at 8 | # http://opensource.org/licenses/bsd-license.php 9 | # 10 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 | # 13 | # Abstract: 14 | # 15 | # Intrinsics required to compile EfiFs with MSFT. 16 | # 17 | #--*/ 18 | 19 | [Defines] 20 | INF_VERSION = 0x00010005 21 | BASE_NAME = CompilerIntrinsicsLib 22 | FILE_GUID = B11194CC-A4AA-4886-8241-101F3DAD8BEF 23 | MODULE_TYPE = BASE 24 | VERSION_STRING = 1.0 25 | LIBRARY_CLASS = CompilerIntrinsicsLib 26 | 27 | # 28 | # VALID_ARCHITECTURES = IA32 X64 29 | # 30 | 31 | [Sources] 32 | memset.c | MSFT 33 | memcpy.c | MSFT 34 | memcmp.c | MSFT 35 | memmove.c | MSFT 36 | 37 | [Sources.IA32] 38 | CRT/Ia32/llmul.c | MSFT # __allmul 39 | CRT/Ia32/llshl.c | MSFT # __allshl 40 | CRT/Ia32/llshr.c | MSFT # __allshr 41 | CRT/Ia32/ulldiv.c | MSFT # __aulldiv 42 | CRT/Ia32/ullrem.c | MSFT # __aullrem 43 | CRT/Ia32/ullshr.c | MSFT # __aullshr 44 | CRT/Ia32/lldiv.c | MSFT # __alldiv 45 | CRT/Ia32/llrem.c | MSFT # __allrem 46 | CRT/Ia32/lldvrm.c | MSFT # __alldvrm 47 | CRT/Ia32/ulldvrm.c | MSFT # __aulldvrm 48 | 49 | [Packages] 50 | MdePkg/MdePkg.dec 51 | 52 | [BuildOptions] 53 | MSFT:*_*_*_CC_FLAGS = /GL- 54 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/memcmp.c: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Copyright (c) 2017, Pete Batard. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | //------------------------------------------------------------------------------ 8 | 9 | #if defined(_M_X64) 10 | typedef unsigned __int64 size_t; 11 | #else 12 | typedef unsigned __int32 size_t; 13 | #endif 14 | 15 | int memcmp(void *, void *, size_t); 16 | #pragma intrinsic(memcmp) 17 | #pragma function(memcmp) 18 | int memcmp(const void *s1, const void *s2, size_t n) 19 | { 20 | unsigned char const *t1 = s1; 21 | unsigned char const *t2 = s2; 22 | 23 | while (n--) { 24 | if (*t1 != *t2) 25 | return (int)*t1 - (int)*t2; 26 | t1++; 27 | t2++; 28 | } 29 | 30 | return 0; 31 | } 32 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/memcpy.c: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Copyright (c) 2017, Pete Batard. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | //------------------------------------------------------------------------------ 8 | 9 | #if defined(_M_X64) 10 | typedef unsigned __int64 size_t; 11 | #else 12 | typedef unsigned __int32 size_t; 13 | #endif 14 | 15 | void* memcpy(void *, const void *, size_t); 16 | #pragma intrinsic(memcpy) 17 | #pragma function(memcpy) 18 | void* memcpy(void *dest, const void *src, size_t n) 19 | { 20 | unsigned char *d = dest; 21 | unsigned char const *s = src; 22 | 23 | while (n--) 24 | *d++ = *s++; 25 | 26 | return dest; 27 | } 28 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/memmove.c: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Copyright (c) 2019, Pete Batard. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | //------------------------------------------------------------------------------ 8 | 9 | #if defined(_M_X64) 10 | typedef unsigned __int64 size_t; 11 | #else 12 | typedef unsigned __int32 size_t; 13 | #endif 14 | 15 | void* memmove(void *, const void *, size_t); 16 | #pragma intrinsic(memmove) 17 | #pragma function(memmove) 18 | void* memmove(void *dest, const void *src, size_t n) 19 | { 20 | unsigned char *d = dest; 21 | unsigned char const *s = src; 22 | 23 | if (d < s) { 24 | while (n--) 25 | *d++ = *s++; 26 | } else { 27 | d += n; 28 | s += n; 29 | while (n--) 30 | *--d = *--s; 31 | } 32 | 33 | return dest; 34 | } 35 | -------------------------------------------------------------------------------- /CompilerIntrinsicsLib/memset.c: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------ 2 | // 3 | // Copyright (c) 2017, Pete Batard. All rights reserved. 4 | // 5 | // SPDX-License-Identifier: BSD-2-Clause-Patent 6 | // 7 | //------------------------------------------------------------------------------ 8 | 9 | #if defined(_M_X64) 10 | typedef unsigned __int64 size_t; 11 | #else 12 | typedef unsigned __int32 size_t; 13 | #endif 14 | 15 | void* memset(void *, int, size_t); 16 | #pragma intrinsic(memset) 17 | #pragma function(memset) 18 | void *memset(void *s, int c, size_t n) 19 | { 20 | unsigned char *d = s; 21 | 22 | while (n--) 23 | *d++ = (unsigned char)c; 24 | 25 | return s; 26 | } 27 | -------------------------------------------------------------------------------- /EfiFsPkg.dec: -------------------------------------------------------------------------------- 1 | ## @file 2 | # EfiFs Package 3 | # 4 | # Copyright (c) 2017-2018, Pete Batard 5 | # 6 | ## 7 | 8 | [Defines] 9 | DEC_SPECIFICATION = 0x00010005 10 | PACKAGE_NAME = EfiFsPkg 11 | PACKAGE_UNI_FILE = EfiFsPkg.uni 12 | PACKAGE_GUID = D65E40B8-BC4B-4625-9E5C-17C5726C39C3 13 | PACKAGE_VERSION = 1.3 14 | 15 | [UserExtensions.TianoCore."ExtraFiles"] 16 | EfiFsPkgExtra.uni 17 | 18 | [Includes] 19 | grub/include 20 | grub 21 | grub/grub-core/lib/minilzo 22 | -------------------------------------------------------------------------------- /EfiFsPkg.dsc: -------------------------------------------------------------------------------- 1 | ## @file 2 | # EfiFs Driver Modules 3 | # 4 | # Copyright (c) 2017-2019, Pete Batard 5 | # 6 | ## 7 | 8 | [Defines] 9 | PLATFORM_NAME = EfiFs 10 | PLATFORM_GUID = 700d6096-1578-409e-a6c7-9acdf9f565b3 11 | PLATFORM_VERSION = 1.3 12 | DSC_SPECIFICATION = 0x00010005 13 | SUPPORTED_ARCHITECTURES = IA32|X64|EBC|ARM|AARCH64 14 | OUTPUT_DIRECTORY = Build/EfiFs 15 | BUILD_TARGETS = DEBUG|RELEASE|NOOPT 16 | SKUID_IDENTIFIER = DEFAULT 17 | 18 | [BuildOptions] 19 | GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 20 | INTEL:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 21 | MSFT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 22 | RVCT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG 23 | *_*_*_CC_FLAGS = -DDISABLE_NEW_DEPRECATED_INTERFACES 24 | 25 | [LibraryClasses] 26 | # 27 | # Entry Point Libraries 28 | # 29 | UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf 30 | # 31 | # Common Libraries 32 | # 33 | BaseLib|MdePkg/Library/BaseLib/BaseLib.inf 34 | BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf 35 | UefiLib|MdePkg/Library/UefiLib/UefiLib.inf 36 | PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf 37 | PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf 38 | MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf 39 | UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf 40 | UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf 41 | DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf 42 | DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf 43 | DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf 44 | 45 | [LibraryClasses.ARM, LibraryClasses.AARCH64] 46 | NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf 47 | NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf 48 | 49 | [LibraryClasses.IA32, LibraryClasses.X64] 50 | !if $(TOOLCHAIN) == "VS2019" 51 | NULL|EfiFsPkg/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf 52 | !endif 53 | 54 | ################################################################################################### 55 | # 56 | # Components Section - list of the modules and components that will be processed by compilation 57 | # tools and the EDK II tools to generate PE32/PE32+/Coff image files. 58 | # 59 | ################################################################################################### 60 | 61 | [Components] 62 | EfiFsPkg/EfiFsPkg/Afs.inf 63 | EfiFsPkg/EfiFsPkg/Affs.inf 64 | EfiFsPkg/EfiFsPkg/Bfs.inf 65 | EfiFsPkg/EfiFsPkg/Btrfs.inf 66 | EfiFsPkg/EfiFsPkg/Cbfs.inf 67 | EfiFsPkg/EfiFsPkg/Cpio.inf 68 | EfiFsPkg/EfiFsPkg/CpioBe.inf 69 | EfiFsPkg/EfiFsPkg/Ext2.inf 70 | EfiFsPkg/EfiFsPkg/ExFat.inf 71 | EfiFsPkg/EfiFsPkg/F2fs.inf 72 | EfiFsPkg/EfiFsPkg/Fat.inf 73 | EfiFsPkg/EfiFsPkg/Hfs.inf 74 | EfiFsPkg/EfiFsPkg/HfsPlus.inf 75 | EfiFsPkg/EfiFsPkg/Iso9660.inf 76 | EfiFsPkg/EfiFsPkg/Jfs.inf 77 | EfiFsPkg/EfiFsPkg/Minix.inf 78 | EfiFsPkg/EfiFsPkg/MinixBe.inf 79 | EfiFsPkg/EfiFsPkg/Minix2.inf 80 | EfiFsPkg/EfiFsPkg/Minix2Be.inf 81 | EfiFsPkg/EfiFsPkg/Minix3.inf 82 | EfiFsPkg/EfiFsPkg/Minix3Be.inf 83 | EfiFsPkg/EfiFsPkg/NewC.inf 84 | EfiFsPkg/EfiFsPkg/NilFs2.inf 85 | EfiFsPkg/EfiFsPkg/Ntfs.inf 86 | EfiFsPkg/EfiFsPkg/Odc.inf 87 | EfiFsPkg/EfiFsPkg/ProcFs.inf 88 | EfiFsPkg/EfiFsPkg/ReiserFs.inf 89 | EfiFsPkg/EfiFsPkg/RomFs.inf 90 | EfiFsPkg/EfiFsPkg/Sfs.inf 91 | # EfiFsPkg/EfiFsPkg/SquashFs.inf 92 | EfiFsPkg/EfiFsPkg/Tar.inf 93 | EfiFsPkg/EfiFsPkg/Udf.inf 94 | EfiFsPkg/EfiFsPkg/Ufs.inf 95 | EfiFsPkg/EfiFsPkg/UfsBe.inf 96 | EfiFsPkg/EfiFsPkg/Ufs2.inf 97 | EfiFsPkg/EfiFsPkg/Xfs.inf 98 | EfiFsPkg/EfiFsPkg/Zfs.inf -------------------------------------------------------------------------------- /EfiFsPkg.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module implementations for EfiFs 3 | // 4 | // Copyright (c) 2017, Pete Batard 5 | // 6 | // **/ 7 | 8 | #string STR_PACKAGE_ABSTRACT #language en-US "Module implementations for EfiFs" 9 | #string STR_PACKAGE_DESCRIPTION #language en-US "This Package contains the module implementation of EfiFs." 10 | -------------------------------------------------------------------------------- /EfiFsPkg/Affs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Affs - EfiFs Amiga Fast FileSystem driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = affs 9 | FILE_GUID = BD873114-A318-48C4-AEF9-6C9E43A50FFA 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/affs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Amiga FFS\"" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | GCC:*_*_*_CC_FLAGS = -Wno-overflow 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Afs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Afs - EfiFs Andrew File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = afs 9 | FILE_GUID = DEFE2F9E-38C4-4278-AB7D-3BCC7B3C9292 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/afs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"AFS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Bfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Bfs - EfiFs BeOS File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = bfs 9 | FILE_GUID = 7686EACB-461E-417F-BB6B-0C5DBA8B4087 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/bfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"BFS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Btrfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Btrfs - EfiFs B-tree File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = btrfs 9 | FILE_GUID = E4FD4F23-5515-434C-9F19-59CA8B122825 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/lib/crc.c 27 | ../grub/grub-core/lib/crypto.c 28 | ../grub/grub-core/lib/minilzo/minilzo.c 29 | ../grub/grub-core/io/lzopio.c 30 | ../grub/grub-core/io/gzio.c 31 | ../grub/grub-core/kern/err.c 32 | ../grub/grub-core/kern/list.c 33 | ../grub/grub-core/kern/misc.c 34 | ../grub/grub-core/fs/fshelp.c 35 | ../grub/grub-core/fs/btrfs.c 36 | 37 | [Packages] 38 | EfiFsPkg/EfiFsPkg.dec 39 | MdePkg/MdePkg.dec 40 | ShellPkg/ShellPkg.dec 41 | 42 | [LibraryClasses] 43 | UefiRuntimeServicesTableLib 44 | UefiBootServicesTableLib 45 | MemoryAllocationLib 46 | BaseMemoryLib 47 | BaseLib 48 | UefiLib 49 | UefiDriverEntryPoint 50 | DebugLib 51 | PcdLib 52 | 53 | [Guids] 54 | gEfiFileInfoGuid 55 | gEfiFileSystemInfoGuid 56 | gEfiFileSystemVolumeLabelInfoIdGuid 57 | 58 | [Protocols] 59 | gEfiDiskIoProtocolGuid 60 | gEfiDiskIo2ProtocolGuid 61 | gEfiBlockIoProtocolGuid 62 | gEfiBlockIo2ProtocolGuid 63 | gEfiSimpleFileSystemProtocolGuid 64 | gEfiUnicodeCollationProtocolGuid 65 | gEfiUnicodeCollation2ProtocolGuid 66 | gEfiDevicePathToTextProtocolGuid 67 | 68 | [Pcd] 69 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 70 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 71 | 72 | [BuildOptions] 73 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 74 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 75 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"Btrfs\" 76 | *_*_*_CC_FLAGS = -DEXTRAMODULE=gzio 77 | GCC:*_*_*_CC_FLAGS = -Wno-unused-function 78 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 79 | -------------------------------------------------------------------------------- /EfiFsPkg/Cbfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Cbfs - EfiFs Callback File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = cbfs 9 | FILE_GUID = DEEC0FF0-64AE-4B2D-A9D1-87057258854C 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources.common] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/io/gzio.c 27 | ../grub/grub-core/kern/err.c 28 | ../grub/grub-core/kern/list.c 29 | ../grub/grub-core/kern/misc.c 30 | ../grub/grub-core/fs/archelp.c 31 | ../grub/grub-core/fs/fshelp.c 32 | ../grub/grub-core/fs/cbfs.c 33 | 34 | [Packages] 35 | EfiFsPkg/EfiFsPkg.dec 36 | MdePkg/MdePkg.dec 37 | ShellPkg/ShellPkg.dec 38 | 39 | [LibraryClasses] 40 | UefiRuntimeServicesTableLib 41 | UefiBootServicesTableLib 42 | MemoryAllocationLib 43 | BaseMemoryLib 44 | BaseLib 45 | UefiLib 46 | UefiDriverEntryPoint 47 | DebugLib 48 | PcdLib 49 | 50 | [Guids] 51 | gEfiFileInfoGuid 52 | gEfiFileSystemInfoGuid 53 | gEfiFileSystemVolumeLabelInfoIdGuid 54 | 55 | [Protocols] 56 | gEfiDiskIoProtocolGuid 57 | gEfiDiskIo2ProtocolGuid 58 | gEfiBlockIoProtocolGuid 59 | gEfiBlockIo2ProtocolGuid 60 | gEfiSimpleFileSystemProtocolGuid 61 | gEfiUnicodeCollationProtocolGuid 62 | gEfiUnicodeCollation2ProtocolGuid 63 | gEfiDevicePathToTextProtocolGuid 64 | 65 | [Pcd] 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 67 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 68 | 69 | [BuildOptions] 70 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 71 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 72 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"CBFS\" 73 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 74 | -------------------------------------------------------------------------------- /EfiFsPkg/Cpio.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Cpio - EfiFs cpio File System driver (Little Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = cpio 9 | FILE_GUID = FE902772-06CD-40E4-B35B-0E760C5E9C1A 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/cpio.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"cpio (LE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/CpioBe.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # CpioBe - EfiFs cpio File System driver (Big Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = cpio_be 9 | FILE_GUID = A3853AE0-E77D-405E-8A75-16333DE1632C 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/cpio_be.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"cpio (BE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/ExFat.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # ExFat - EfiFs ExFAT File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = exfat 9 | FILE_GUID = 2920E524-AD21-499E-9F4A-466BFDC3BFFB 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/exfat.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ExFAT\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Ext2.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Ext2 - EfiFs ext2/ext3/ext4 File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = ext2 9 | FILE_GUID = 7DDA7772-B8F5-4859-9DBA-0D6F2DBA4AF1 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/ext2.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ext2/3/4\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/F2fs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # F2FS - EfiFs F2FS driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = f2fs 9 | FILE_GUID = 3D1F4906-3509-4DD4-8850-70033DE336E4 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/f2fs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"F2FS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Fat.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Fat - EfiFs FAT File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = fat 9 | FILE_GUID = B9E0C839-BF75-4889-82FF-214BED41BA47 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fat.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ExFAT\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Hfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Hfs - EfiFs Hierarchical File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = hfs 9 | FILE_GUID = BB57B5D8-F6DE-481C-9B08-C779B0F33E25 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/hfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"HFS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/HfsPlus.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # HfsPlus - Hierarchical File System "Plus" driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = hfsplus 9 | FILE_GUID = EE593365-0635-44FC-AF28-DB98B63FDBC6 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/io/gzio.c 27 | ../grub/grub-core/kern/err.c 28 | ../grub/grub-core/kern/list.c 29 | ../grub/grub-core/kern/misc.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/hfsplus.c 32 | ../grub/grub-core/fs/hfspluscomp.c 33 | 34 | [Packages] 35 | EfiFsPkg/EfiFsPkg.dec 36 | MdePkg/MdePkg.dec 37 | ShellPkg/ShellPkg.dec 38 | 39 | [LibraryClasses] 40 | UefiRuntimeServicesTableLib 41 | UefiBootServicesTableLib 42 | MemoryAllocationLib 43 | BaseMemoryLib 44 | BaseLib 45 | UefiLib 46 | UefiDriverEntryPoint 47 | DebugLib 48 | PcdLib 49 | 50 | [Guids] 51 | gEfiFileInfoGuid 52 | gEfiFileSystemInfoGuid 53 | gEfiFileSystemVolumeLabelInfoIdGuid 54 | 55 | [Protocols] 56 | gEfiDiskIoProtocolGuid 57 | gEfiDiskIo2ProtocolGuid 58 | gEfiBlockIoProtocolGuid 59 | gEfiBlockIo2ProtocolGuid 60 | gEfiSimpleFileSystemProtocolGuid 61 | gEfiUnicodeCollationProtocolGuid 62 | gEfiUnicodeCollation2ProtocolGuid 63 | gEfiDevicePathToTextProtocolGuid 64 | 65 | [Pcd] 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 67 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 68 | 69 | [BuildOptions] 70 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 71 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 72 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"HFS+\" 73 | # HFS+ has a compressed driver 74 | *_*_*_CC_FLAGS = -DCOMPRESSED_DRIVERNAME=$(BASE_NAME)comp -DEXTRAMODULE=gzio 75 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 76 | -------------------------------------------------------------------------------- /EfiFsPkg/Iso9660.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Iso9660 - EfiFs ISO9660 File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = iso9660 9 | FILE_GUID = EFBE987A-A33B-4EE4-B2B5-35DEDC28A5E9 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/iso9660.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ISO9660\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Jfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # JFS - EfiFs Journaled File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = jfs 9 | FILE_GUID = E87CF4E3-318E-4B5F-98B9-A6B47414506D 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/jfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"JFS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Minix.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Minix - EfiFs MINIX File System driver (Little Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix 9 | FILE_GUID = 16CE8469-1586-4CE0-B90C-88D049A2967B 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix (LE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Minix2.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Minix2 - EfiFs MINIX 2 File System driver (Little Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix2 9 | FILE_GUID = 0AF860D2-4089-496A-AB51-2F28730E5CF6 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix2.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix2 (LE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Minix2Be.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Minix2Be - EfiFs MINIX 2 File System driver (Big Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix2_be 9 | FILE_GUID = 0974F29A-42B5-4B32-A9E6-7BB42BE57B84 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix2_be.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix2 (BE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Minix3.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Minix3 - EfiFs MINIX 3 File System driver (Little Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix3 9 | FILE_GUID = 8DE9E73E-B120-49AA-960B-FC18FCEAAB3A 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix3.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix3 (LE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Minix3Be.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Minix3Be - EfiFs MINIX 3 File System driver (Big Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix3_be 9 | FILE_GUID = 9C3DB9FC-7B1A-4534-B5B9-C21E56EE7BA6 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix3_be.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix3 (BE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/MinixBe.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # MinixBe - EfiFs MINIX File System driver (Big Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = minix_be 9 | FILE_GUID = 5B677870-CF38-4892-AF77-AA5C9695DFBB 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/minix_be.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Minix (BE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/NewC.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # NewC - EfiFs cpio (newc) File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = newc 9 | FILE_GUID = 5C0F70A7-DC33-4A82-9056-924E83E33F01 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources.common] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/newc.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"cpio (newc)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/NilFs2.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # NilFS2 - EfiFs NILFS2 driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = nilfs2 9 | FILE_GUID = E6BCED0B-96E0-4BD7-AF96-65467ABAAC6E 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/nilfs2.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"NILFS2\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Ntfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Ntfs - EfiFs NTFS driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = ntfs 9 | FILE_GUID = 80FB68D4-7C52-4AFE-A91E-D3DDADB5C54F 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/ntfs.c 31 | ../grub/grub-core/fs/ntfscomp.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"NTFS\" 72 | # NTFS has a compressed driver 73 | *_*_*_CC_FLAGS = -DCOMPRESSED_DRIVERNAME=$(BASE_NAME)comp 74 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 75 | -------------------------------------------------------------------------------- /EfiFsPkg/Odc.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Odc - EfiFs cpio (odc) File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = odc 9 | FILE_GUID = FC117DCB-B369-46B7-A84E-E34EF821756C 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources.common] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/odc.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"cpio (odc)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/ProcFs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # ProcFs - EfiFs procfs driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = procfs 9 | FILE_GUID = 4F59B6B8-8FED-41B4-A970-CCBAF0F684DF 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/proc.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"procfs\" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/ReiserFs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # ReiserFs - EfiFs Reiser File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = reiserfs 9 | FILE_GUID = 8B20B75F-5AAB-4839-A5F2-2843653BDEFF 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/reiserfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ReiserFS\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/RomFs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # RomFs - EfiFs ROM File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = romfs 9 | FILE_GUID = A57C00D8-2766-4DDF-AC8D-BAC89472F255 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/romfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"romfs\" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/Sfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # AFFS - EfiFs Amiga SFS driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = sfs 9 | FILE_GUID = 0093FDD4-86D8-457C-82C9-2832321BB8B5 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/sfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | [BuildOptions] 68 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 69 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 70 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"Amiga SFS\"" 71 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 72 | -------------------------------------------------------------------------------- /EfiFsPkg/SquashFs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # SquashFs - EfiFs Squash File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = squash4 9 | FILE_GUID = F85516B3-FEAD-4D5B-9E4A-9A476ABA65CA 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/lib/crc.c 27 | ../grub/grub-core/lib/crypto.c 28 | ../grub/grub-core/lib/xzembed/xz_dec_bcj.c 29 | ../grub/grub-core/lib/xzembed/xz_dec_lzma2.c 30 | ../grub/grub-core/lib/xzembed/xz_dec_stream.c 31 | ../grub/grub-core/lib/minilzo/minilzo.c 32 | ../grub/grub-core/io/gzio.c 33 | ../grub/grub-core/io/lzopio.c 34 | ../grub/grub-core/io/xzio.c 35 | ../grub/grub-core/kern/err.c 36 | ../grub/grub-core/kern/misc.c 37 | ../grub/grub-core/kern/list.c 38 | ../grub/grub-core/fs/fshelp.c 39 | ../grub/grub-core/fs/squash4.c 40 | 41 | [Packages] 42 | EfiFsPkg/EfiFsPkg.dec 43 | MdePkg/MdePkg.dec 44 | ShellPkg/ShellPkg.dec 45 | 46 | [LibraryClasses] 47 | UefiRuntimeServicesTableLib 48 | UefiBootServicesTableLib 49 | MemoryAllocationLib 50 | BaseMemoryLib 51 | BaseLib 52 | UefiLib 53 | UefiDriverEntryPoint 54 | DebugLib 55 | PcdLib 56 | 57 | [Guids] 58 | gEfiFileInfoGuid 59 | gEfiFileSystemInfoGuid 60 | gEfiFileSystemVolumeLabelInfoIdGuid 61 | 62 | [Protocols] 63 | gEfiDiskIoProtocolGuid 64 | gEfiDiskIo2ProtocolGuid 65 | gEfiBlockIoProtocolGuid 66 | gEfiBlockIo2ProtocolGuid 67 | gEfiSimpleFileSystemProtocolGuid 68 | gEfiUnicodeCollationProtocolGuid 69 | gEfiUnicodeCollation2ProtocolGuid 70 | gEfiDevicePathToTextProtocolGuid 71 | 72 | [Pcd] 73 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 74 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 75 | 76 | [BuildOptions] 77 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 78 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 79 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"SquashFS\" 80 | # SquashFS uses additional modules 81 | *_*_*_CC_FLAGS = -DEXTRAMODULE=gzio -DEXTRAMODULE2=lzopio -DEXTRAMODULE3=xzio 82 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 83 | -------------------------------------------------------------------------------- /EfiFsPkg/Tar.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Tar - tar archive File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = tar 9 | FILE_GUID = 5FA5BB28-C228-48BC-BEED-4137E56B5C32 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/archelp.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/tar.c 32 | 33 | [Packages] 34 | EfiFsPkg/EfiFsPkg.dec 35 | MdePkg/MdePkg.dec 36 | ShellPkg/ShellPkg.dec 37 | 38 | [LibraryClasses] 39 | UefiRuntimeServicesTableLib 40 | UefiBootServicesTableLib 41 | MemoryAllocationLib 42 | BaseMemoryLib 43 | BaseLib 44 | UefiLib 45 | UefiDriverEntryPoint 46 | DebugLib 47 | PcdLib 48 | 49 | [Guids] 50 | gEfiFileInfoGuid 51 | gEfiFileSystemInfoGuid 52 | gEfiFileSystemVolumeLabelInfoIdGuid 53 | 54 | [Protocols] 55 | gEfiDiskIoProtocolGuid 56 | gEfiDiskIo2ProtocolGuid 57 | gEfiBlockIoProtocolGuid 58 | gEfiBlockIo2ProtocolGuid 59 | gEfiSimpleFileSystemProtocolGuid 60 | gEfiUnicodeCollationProtocolGuid 61 | gEfiUnicodeCollation2ProtocolGuid 62 | gEfiDevicePathToTextProtocolGuid 63 | 64 | [Pcd] 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 66 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"tar\" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Udf.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Udf - EfiFs Universal Disk Format File System driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = udf 9 | FILE_GUID = 3E1C5997-2AED-4A6C-A8BF-07882633D1FB 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/udf.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"UDF\" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Ufs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Ufs - EfiFs UFS driver (Little Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = ufs1 9 | FILE_GUID = CFC9DAEA-DBB4-4A5A-8034-D0ABF2849DF3 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/ufs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"UFS (LE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Ufs2.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Ufs2 - EfiFs UFS2 driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = ufs2 9 | FILE_GUID = 15ED2F4C-1EB8-4B4F-826B-73D83EDAA449 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/ufs2.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"UFS2\" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/UfsBe.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # UfsBe - EfiFs UFS driver (Big Endian). 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = ufs1_be 9 | FILE_GUID = F3B03ADF-0595-483C-BF15-0C39A444345C 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/ufs_be.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR="\"UFS (BE)\"" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Xfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Xfs - EfiFs XFS driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = xfs 9 | FILE_GUID = 8F56A526-1566-442F-9D7F-3E704772B75A 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/kern/err.c 27 | ../grub/grub-core/kern/list.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/fs/fshelp.c 30 | ../grub/grub-core/fs/xfs.c 31 | 32 | [Packages] 33 | EfiFsPkg/EfiFsPkg.dec 34 | MdePkg/MdePkg.dec 35 | ShellPkg/ShellPkg.dec 36 | 37 | [LibraryClasses] 38 | UefiRuntimeServicesTableLib 39 | UefiBootServicesTableLib 40 | MemoryAllocationLib 41 | BaseMemoryLib 42 | BaseLib 43 | UefiLib 44 | UefiDriverEntryPoint 45 | DebugLib 46 | PcdLib 47 | 48 | [Guids] 49 | gEfiFileInfoGuid 50 | gEfiFileSystemInfoGuid 51 | gEfiFileSystemVolumeLabelInfoIdGuid 52 | 53 | [Protocols] 54 | gEfiDiskIoProtocolGuid 55 | gEfiDiskIo2ProtocolGuid 56 | gEfiBlockIoProtocolGuid 57 | gEfiBlockIo2ProtocolGuid 58 | gEfiSimpleFileSystemProtocolGuid 59 | gEfiUnicodeCollationProtocolGuid 60 | gEfiUnicodeCollation2ProtocolGuid 61 | gEfiDevicePathToTextProtocolGuid 62 | 63 | [Pcd] 64 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 65 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 66 | 67 | 68 | [BuildOptions] 69 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 70 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 71 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"XFS\" 72 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 73 | -------------------------------------------------------------------------------- /EfiFsPkg/Zfs.inf: -------------------------------------------------------------------------------- 1 | ## @file 2 | # 3 | # Zfs - EfiFs ZFS driver. 4 | # 5 | 6 | [Defines] 7 | INF_VERSION = 0x00010005 8 | BASE_NAME = zfs 9 | FILE_GUID = 0F6A96E7-0F76-4947-90DB-D4FD7A7E6147 10 | MODULE_TYPE = UEFI_DRIVER 11 | VERSION_STRING = 1.3 12 | EDK_RELEASE_VERSION = 0x00020000 13 | EFI_SPECIFICATION_VERSION = 0x00020000 14 | ENTRY_POINT = FSDriverInstall 15 | 16 | [Sources] 17 | ../src/driver.c 18 | ../src/file.c 19 | ../src/grub.c 20 | ../src/grub_file.c 21 | ../src/logging.c 22 | ../src/missing.c 23 | ../src/this.c 24 | ../src/path.c 25 | ../src/utf8.c 26 | ../grub/grub-core/io/gzio.c 27 | ../grub/grub-core/kern/err.c 28 | ../grub/grub-core/kern/misc.c 29 | ../grub/grub-core/kern/list.c 30 | ../grub/grub-core/fs/fshelp.c 31 | ../grub/grub-core/fs/zfs/zfs.c 32 | ../grub/grub-core/fs/zfs/zfs_fletcher.c 33 | ../grub/grub-core/fs/zfs/zfs_lz4.c 34 | ../grub/grub-core/fs/zfs/zfs_lzjb.c 35 | ../grub/grub-core/fs/zfs/zfs_sha256.c 36 | 37 | [Packages] 38 | EfiFsPkg/EfiFsPkg.dec 39 | MdePkg/MdePkg.dec 40 | ShellPkg/ShellPkg.dec 41 | 42 | [LibraryClasses] 43 | UefiRuntimeServicesTableLib 44 | UefiBootServicesTableLib 45 | MemoryAllocationLib 46 | BaseMemoryLib 47 | BaseLib 48 | UefiLib 49 | UefiDriverEntryPoint 50 | DebugLib 51 | PcdLib 52 | 53 | [Guids] 54 | gEfiFileInfoGuid 55 | gEfiFileSystemInfoGuid 56 | gEfiFileSystemVolumeLabelInfoIdGuid 57 | 58 | [Protocols] 59 | gEfiDiskIoProtocolGuid 60 | gEfiDiskIo2ProtocolGuid 61 | gEfiBlockIoProtocolGuid 62 | gEfiBlockIo2ProtocolGuid 63 | gEfiSimpleFileSystemProtocolGuid 64 | gEfiUnicodeCollationProtocolGuid 65 | gEfiUnicodeCollation2ProtocolGuid 66 | gEfiDevicePathToTextProtocolGuid 67 | 68 | [Pcd] 69 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultLang 70 | gEfiMdePkgTokenSpaceGuid.PcdUefiVariableDefaultPlatformLang 71 | 72 | [BuildOptions] 73 | *_*_IA32_CC_FLAGS = -DFORMAT=efi-app-ia32 74 | *_*_X64_CC_FLAGS = -DFORMAT=efi-app-x64 75 | *_*_*_CC_FLAGS = -Os -DCPU_$(ARCH) -DGRUB_FILE=__FILE__ -DDRIVERNAME=$(BASE_NAME) -DDRIVERNAME_STR=\"ZFS\" 76 | # ZFS has an extra module 77 | *_*_*_CC_FLAGS = -DEXTRAMODULE=gzio 78 | MSFT:*_*_*_CC_FLAGS = /wd4028 /wd4068 /wd4133 /wd4146 /wd4201 /wd4204 /wd4244 /wd4245 /wd4267 /wd4311 /wd4312 /wd4334 /wd4706 79 | -------------------------------------------------------------------------------- /EfiFsPkgExtra.uni: -------------------------------------------------------------------------------- 1 | // /** @file 2 | // Module Localized content 3 | // 4 | // Copyright (c) 2017, Pete Batard 5 | // 6 | // **/ 7 | 8 | #string STR_PROPERTIES_PACKAGE_NAME 9 | #language en-US 10 | "EfiFs Package" 11 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | include Make.common 2 | 3 | GRUB_LIB = $(GRUB_DIR)/libgrub.a 4 | 5 | CFLAGS += -DGRUB_FILE=\"$(subst $(srcdir)/,,$<)\" -DLZO_CFG_FREESTANDING 6 | CFLAGS += -I$(GRUB_DIR) -I$(GRUB_DIR)/include -I$(GRUB_DIR)/grub-core/lib/minilzo 7 | OBJS = $(SRC_DIR)/grub.o $(GRUB_DIR)/grub-core/kern/err.o $(GRUB_DIR)/grub-core/kern/list.o \ 8 | $(GRUB_DIR)/grub-core/kern/misc.o $(GRUB_DIR)/grub-core/lib/crc.o \ 9 | $(GRUB_DIR)/grub-core/lib/minilzo/minilzo.o 10 | 11 | -include $(OBJS:.o=.d) 12 | .PHONY: all clean 13 | .DEFAULT_GOAL := all 14 | 15 | all: $(GNUEFI_LIB) $(GRUB_LIB) 16 | $(MAKE) -C $(SRC_DIR) 17 | 18 | $(GRUB_DIR)/include/grub/cpu_$(CPU_ARCH): 19 | @rm -rf $(GRUB_DIR)/include/grub/cpu* 20 | @echo [LN] $(GRUB_DIR)/include/grub/$(CPU_ARCH) -\> $(GRUB_DIR)/include/grub/cpu 21 | @cd $(GRUB_DIR)/include/grub && ln -s $(CPU_ARCH) cpu && touch cpu_$(CPU_ARCH) 22 | 23 | $(GRUB_DIR)/config.h: 24 | @echo [CP] $(notdir $@) 25 | @cp $(CURDIR)/config.h $(GRUB_DIR) 26 | 27 | $(GRUB_LIB): $(GRUB_DIR)/config.h $(GRUB_DIR)/include/grub/cpu_$(CPU_ARCH) $(OBJS) 28 | @echo [AR] $(notdir $@) 29 | @$(AR) sq $@ $(OBJS) 30 | 31 | clean: clean.common 32 | $(MAKE) -C $(SRC_DIR) clean 33 | rm -rf $(GRUB_DIR)/include/grub/cpu* 34 | rm -f $(OBJS) $(LIB_TARGET) $(GRUB_DIR)/config.h $(GRUB_DIR)/*.a 35 | -------------------------------------------------------------------------------- /_newfs.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # This script creates a new driver project 3 | TEMPLATE=exfat 4 | TEMPLATE_GUID=25E5B551-F9DD-4D25-A7CD-A1090B558A49 5 | GUID=`curl -ks https://www.guidgen.com | grep YourGuidLabel | sed 's/.*value=\"\(.*\)\".*/\1/'` 6 | cp $TEMPLATE.vcxproj $1.vcxproj 7 | cp $TEMPLATE.vcxproj.filters $1.vcxproj.filters 8 | cp $TEMPLATE.vcxproj.user $1.vcxproj.user 9 | sed -i "s/$TEMPLATE_GUID/$GUID/" $1.vcxproj 10 | sed -i "s/$TEMPLATE/$1/g" $1.vcxproj 11 | sed -i "s/$/\r/" $1.vcxproj 12 | sed -i "s/$TEMPLATE/$1/g" $1.vcxproj.filters 13 | sed -i "s/$/\r/" $1.vcxproj.filters 14 | echo Created project files using GUID $GUID -------------------------------------------------------------------------------- /config.h: -------------------------------------------------------------------------------- 1 | /* 2 | * minimal GRUB config.h for efifs compilation 3 | */ 4 | 5 | #if defined(_MSC_VER) 6 | #pragma warning(disable: 4146) // "unary minus operator applied to unsigned type, result still unsigned" 7 | #pragma warning(disable: 4244) // "Conversion from X to Y, possible loss of data" 8 | #pragma warning(disable: 4267) // "Conversion from X to Y, possible loss of data" 9 | #pragma warning(disable: 4334) // "Result of 32-bit shift implicitly converted to 64 bits" 10 | #endif 11 | 12 | #if defined(_M_X64) || defined(__x86_64__) 13 | #define GRUB_TARGET_CPU "x86_64" 14 | #elif defined(_M_IX86) || defined(__i386__) 15 | #define GRUB_TARGET_CPU "i386" 16 | #elif defined (_M_ARM) || defined(__arm__) 17 | #define GRUB_TARGET_CPU "arm" 18 | #elif defined (_M_ARM64) || defined(__aarch64__) 19 | #define GRUB_TARGET_CPU "arm64" 20 | #else 21 | #error Usupported architecture 22 | #endif 23 | 24 | #define _LARGEFILE_SOURCE 25 | #define _FILE_OFFSET_BITS 64 26 | #define PACKAGE_STRING "GRUB 2.0" 27 | 28 | #define GRUB_PLATFORM "efi" 29 | #define GRUB_MACHINE_EFI 30 | #define GRUB_KERNEL 31 | 32 | #if defined(__GNUC__) 33 | #define _GNU_SOURCE 1 34 | #define size_t grub_size_t 35 | #endif 36 | 37 | #if defined(_MSC_VER) 38 | #define inline __inline 39 | #define __attribute__(x) 40 | #define __attribute(x) 41 | 42 | // Silence warnings that are triggered by GNU extensions not being available 43 | #pragma warning(disable: 4716) // Some of the grub function calls are set not to return a value 44 | #endif 45 | -------------------------------------------------------------------------------- /edk2_build_drivers.cmd: -------------------------------------------------------------------------------- 1 | @rem This script builds all the drivers using EDK2 and VS2019. 2 | @echo off 3 | setlocal enabledelayedexpansion 4 | 5 | set EDK2_PATH=D:\edk2 6 | set EFIFS_PATH=%~dp0 7 | set NASM_PREFIX=%EDK2_PATH%\BaseTools\Bin\Win32\ 8 | 9 | rem cd /d "%~dp0" 10 | 11 | if not exist "%EDK2_PATH%\edksetup.bat" ( 12 | echo ERROR: Please edit the script and make sure EDK2_PATH is set to your EDK2 directory 13 | pause 14 | exit /b 1 15 | ) 16 | 17 | if not exist "%NASM_PREFIX%nasm.exe" ( 18 | echo ERROR: You must have nasm.exe in %NASM_PREFIX%nasm.exe 19 | pause 20 | exit /b 1 21 | ) 22 | 23 | if not exist "%EDK2_PATH%\EfiFsPkg\set_grub_cpu.cmd" ( 24 | mklink /D "%EDK2_PATH%\EfiFsPkg" "%~dp0" 25 | if not !ERRORLEVEL! equ 0 ( 26 | echo ERROR: Could not create EfiFsPkg link - Are you running this script as Administrator? 27 | pause 28 | exit /b 1 29 | ) 30 | ) 31 | 32 | cd /d "%EDK2_PATH%" 33 | 34 | if /I "%1"=="win32" goto ia32 35 | if /I "%1"=="ia32" goto ia32 36 | if /I "%1"=="x86" goto ia32 37 | if /I "%1"=="x64" goto x64 38 | if /I "%1"=="win64" goto x64 39 | if /I "%1"=="arm" goto arm 40 | if /I "%1"=="arm64" goto aarch64 41 | if /I "%1"=="aa64" goto aarch64 42 | if /I "%1"=="aarch64" goto aarch64 43 | 44 | :arm 45 | if exist "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_arm.bat" ( 46 | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_arm.bat" 47 | call edksetup.bat reconfig 48 | call EfiFsPkg\set_grub_cpu.cmd ARM 49 | call build -a ARM -b RELEASE -t VS2019 -p EfiFsPkg/EfiFsPkg.dsc 50 | ) 51 | if not "%1"=="" goto out 52 | 53 | :aarch64 54 | if exist "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_arm64.bat" ( 55 | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsamd64_arm64.bat" 56 | call edksetup.bat reconfig 57 | call EfiFsPkg\set_grub_cpu.cmd AARCH64 58 | call build -a AARCH64 -b RELEASE -t VS2019 -p EfiFsPkg/EfiFsPkg.dsc 59 | ) 60 | if not "%1"=="" goto out 61 | 62 | :ia32 63 | if exist "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat" ( 64 | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat" 65 | call edksetup.bat reconfig 66 | call EfiFsPkg\set_grub_cpu.cmd IA32 67 | call build -a IA32 -b RELEASE -t VS2019 -p EfiFsPkg/EfiFsPkg.dsc 68 | ) 69 | if not "%1"=="" goto out 70 | 71 | :x64 72 | if exist "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat" ( 73 | call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat" 74 | call edksetup.bat reconfig 75 | call EfiFsPkg\set_grub_cpu.cmd X64 76 | call build -a X64 -b RELEASE -t VS2019 -p EfiFsPkg/EfiFsPkg.dsc 77 | ) 78 | 79 | :out 80 | pause 81 | -------------------------------------------------------------------------------- /set_grub_cpu.cmd: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | set ARCH= 4 | if /I "%1"=="win32" set ARCH=i386 5 | if /I "%1"=="ia32" set ARCH=i386 6 | if /I "%1"=="x86" set ARCH=i386 7 | if /I "%1"=="x64" set ARCH=x86_64 8 | if /I "%1"=="win64" set ARCH=x86_64 9 | if /I "%1"=="arm" set ARCH=arm 10 | if /I "%1"=="arm64" set ARCH=arm64 11 | if /I "%1"=="aa64" set ARCH=arm64 12 | if /I "%1"=="aarch64" set ARCH=arm64 13 | if "%ARCH%"=="" ( 14 | echo Unsupported arch %1 15 | goto out 16 | ) 17 | echo Setting GRUB for %ARCH%... 18 | 19 | if not exist "%~dp0\grub\include\grub\cpu\%ARCH%" ( 20 | echo Duplicating grub\include\grub\%ARCH%\ to grub\include\grub\cpu\ 21 | rmdir /S /Q "%~dp0\grub\include\grub\cpu" >NUL 2>&1 22 | xcopy "%~dp0\grub\include\grub\%ARCH%" "%~dp0\grub\include\grub\cpu" /i /q /s /y /z 23 | echo %ARCH% > "%~dp0\grub\include\grub\cpu\%ARCH%" 24 | ) 25 | 26 | :out 27 | -------------------------------------------------------------------------------- /set_grub_cpu.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | grub_include=`dirname $(readlink -f $0)`/grub/include/grub 3 | shopt -s nocasematch 4 | case "$1" in 5 | "x64") arch=x86_64;; 6 | "x86") arch=i386;; 7 | "ia32") arch=i386;; 8 | "arm") arch=arm;; 9 | "arm64") arch=arm64;; 10 | "aa64") arch=arm64;; 11 | "aarch64") arch=arm64;; 12 | *) echo "Unsupported arch"; exit 1;; 13 | esac 14 | rm -f $grub_include/cpu 15 | ln -vs $grub_include/$arch $grub_include/cpu 16 | -------------------------------------------------------------------------------- /src/Makefile: -------------------------------------------------------------------------------- 1 | DRIVER_MAKEFILE = $(CURDIR)/../Make.common 2 | FILESYSTEMS = affs bfs btrfs exfat ext2 f2fs hfs hfsplus iso9660 jfs nilfs2 ntfs reiserfs sfs udf ufs2 xfs zfs 3 | 4 | .PHONY: all clean 5 | 6 | all: $(FILESYSTEMS) 7 | 8 | affs: 9 | @rm -f this.o 10 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="Amiga FFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 11 | 12 | bfs: 13 | @rm -f this.o 14 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="BFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 15 | 16 | btrfs: 17 | @rm -f this.o 18 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="Btrfs" FSDIR=fs EXTRAMODULE=gzio EXTRAMODULEDIR=io -f $(DRIVER_MAKEFILE) driver 19 | 20 | exfat: 21 | @rm -f this.o 22 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="ExFAT" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 23 | 24 | ext2: 25 | @rm -f this.o 26 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="ext2/3/4" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 27 | 28 | f2fs: 29 | @rm -f this.o 30 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="F2FS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 31 | 32 | hfs: 33 | @rm -f this.o 34 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="HFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 35 | 36 | hfsplus: 37 | @rm -f this.o 38 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="HFS+" FSDIR=fs EXTRAMODULE=$@comp EXTRAMODULEDIR=fs EXTRAMODULE2=gzio EXTRAMODULE2DIR=io -f $(DRIVER_MAKEFILE) driver 39 | 40 | iso9660: 41 | @rm -f this.o 42 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="ISO9660" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 43 | 44 | jfs: 45 | @rm -f this.o 46 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="JFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 47 | 48 | nilfs2: 49 | @rm -f this.o 50 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="NILFS2" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 51 | 52 | ntfs: 53 | @rm -f this.o 54 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="NTFS" FSDIR=fs EXTRAMODULE=$@comp EXTRAMODULEDIR=fs -f $(DRIVER_MAKEFILE) driver 55 | 56 | reiserfs: 57 | @rm -f this.o 58 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="ReiserFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 59 | 60 | sfs: 61 | @rm -f this.o 62 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="Amiga SFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 63 | 64 | udf: 65 | @rm -f this.o 66 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="UDF" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 67 | 68 | ufs2: 69 | @rm -f this.o 70 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="UFS2 (LE)" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 71 | 72 | xfs: 73 | @rm -f this.o 74 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="XFS" FSDIR=fs -f $(DRIVER_MAKEFILE) driver 75 | 76 | zfs: 77 | @rm -f this.o 78 | +$(MAKE) DRIVERNAME=$@ DRIVERNAME_STR="ZFS" FSDIR=fs/zfs EXTRAMODULE=gzio EXTRAMODULEDIR=io EXTRAOBJS="zfs_fletcher.o zfs_lz4.o zfs_lzjb.o zfs_sha256.o" -f $(DRIVER_MAKEFILE) driver 79 | 80 | clean: 81 | +$(MAKE) -f $(DRIVER_MAKEFILE) clean.driver 82 | -------------------------------------------------------------------------------- /src/logging.c: -------------------------------------------------------------------------------- 1 | /* logging.c - EFI logging */ 2 | /* 3 | * Copyright © 2014-2017 Pete Batard 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | #include "driver.h" 20 | 21 | /* Not defined in gnu-efi yet */ 22 | #define SHELL_VARIABLE_GUID { \ 23 | 0x158def5a, 0xf656, 0x419c, { 0xb0, 0x27, 0x7a, 0x31, 0x92, 0xc0, 0x79, 0xd2 } \ 24 | } 25 | extern EFI_GUID gShellVariableGuid; 26 | EFI_GUID ShellVariable = SHELL_VARIABLE_GUID; 27 | 28 | static UINTN PrintNone(IN CONST CHAR16 *fmt, ... ) { return 0; } 29 | Print_t PrintError = PrintNone; 30 | Print_t PrintWarning = PrintNone; 31 | Print_t PrintInfo = PrintNone; 32 | Print_t PrintDebug = PrintNone; 33 | Print_t PrintExtra = PrintNone; 34 | Print_t* PrintTable[] = { &PrintError, &PrintWarning, &PrintInfo, 35 | &PrintDebug, &PrintExtra }; 36 | 37 | /* Global driver verbosity level */ 38 | #if !defined(DEFAULT_LOGLEVEL) 39 | #define DEFAULT_LOGLEVEL FS_LOGLEVEL_NONE 40 | #endif 41 | UINTN LogLevel = DEFAULT_LOGLEVEL; 42 | 43 | /** 44 | * Print status 45 | * 46 | * @v Status EFI status code 47 | */ 48 | VOID 49 | PrintStatus(EFI_STATUS Status) 50 | { 51 | #if defined(__MAKEWITH_GNUEFI) 52 | CHAR16 StatusString[64]; 53 | StatusToString(StatusString, Status); 54 | // Make sure the Status is unsigned 32 bits 55 | Print(L": [%d] %s\n", (Status & 0x7FFFFFFF), StatusString); 56 | #else 57 | Print(L": [%d]\n", (Status & 0x7FFFFFFF)); 58 | #endif 59 | } 60 | 61 | /* 62 | * You can control the verbosity of the driver output by setting the shell environment 63 | * variable FS_LOGGING to one of the values defined in the FS_LOGLEVEL constants 64 | */ 65 | VOID 66 | SetLogging(VOID) 67 | { 68 | EFI_STATUS Status; 69 | CHAR16 LogVar[4]; 70 | UINTN i, LogVarSize = sizeof(LogVar); 71 | 72 | Status = RT->GetVariable(L"FS_LOGGING", &ShellVariable, NULL, &LogVarSize, LogVar); 73 | if (Status == EFI_SUCCESS) 74 | LogLevel = Atoi(LogVar); 75 | 76 | for (i=0; i 4 | * Based on GRUB -- GRand Unified Bootloader 5 | * Copyright © 1999-2010 Free Software Foundation, Inc. 6 | * 7 | * This program is free software: you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation, either version 3 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program. If not, see . 19 | */ 20 | 21 | #include "driver.h" 22 | 23 | // Needed to avoid a LNK2043 error with EDK2/MSVC/IA32 24 | #if !defined(__MAKEWITH_GNUEFI) && defined(_M_IX86) 25 | #pragma comment(linker, "/INCLUDE:_MultS64x64") 26 | #endif 27 | 28 | VOID 29 | strcpya(CHAR8 *dst, CONST CHAR8 *src) 30 | { 31 | INTN len = strlena(src) + 1; 32 | CopyMem(dst, src, len); 33 | } 34 | 35 | CHAR8 * 36 | strchra(const CHAR8 *s, INTN c) 37 | { 38 | do { 39 | if (*s == c) 40 | return (CHAR8 *) s; 41 | } 42 | while (*s++); 43 | 44 | return NULL; 45 | } 46 | 47 | CHAR8 * 48 | strrchra(const CHAR8 *s, INTN c) 49 | { 50 | CHAR8 *p = NULL; 51 | 52 | do { 53 | if (*s == c) 54 | p = (CHAR8 *) s; 55 | } 56 | while (*s++); 57 | 58 | return p; 59 | } 60 | 61 | EFI_STATUS 62 | PrintGuid(EFI_GUID *Guid) 63 | { 64 | if (Guid == NULL) { 65 | Print(L"ERROR: PrintGuid called with a NULL value.\n"); 66 | return EFI_INVALID_PARAMETER; 67 | } 68 | 69 | Print(L"%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x\n", 70 | Guid->Data1, 71 | Guid->Data2, 72 | Guid->Data3, 73 | Guid->Data4[0], 74 | Guid->Data4[1], 75 | Guid->Data4[2], 76 | Guid->Data4[3], 77 | Guid->Data4[4], 78 | Guid->Data4[5], 79 | Guid->Data4[6], 80 | Guid->Data4[7] 81 | ); 82 | return EFI_SUCCESS; 83 | } 84 | -------------------------------------------------------------------------------- /src/path.c: -------------------------------------------------------------------------------- 1 | /* path.c - Path handling routines */ 2 | /* 3 | * Copyright © 2014 Pete Batard 4 | * Based on path sanitation code by Ludwig Nussel 5 | * 6 | * This program is free software: you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation, either version 3 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program. If not, see . 18 | */ 19 | 20 | #include "driver.h" 21 | 22 | /* copy src into dest converting the path to a relative one inside the current 23 | * directory. dest must hold at least len bytes 24 | */ 25 | 26 | #ifndef PATH_CHAR 27 | #define PATH_CHAR '/' 28 | #endif 29 | 30 | VOID CopyPathRelative(CHAR8 *dest, CHAR8 *src, INTN len) 31 | { 32 | CHAR8* o = dest; 33 | CHAR8* p = src; 34 | 35 | *o = '\0'; 36 | 37 | while(*p && *p == PATH_CHAR) ++p; 38 | for(; len && *p;) 39 | { 40 | src = p; 41 | p = strchra(src, PATH_CHAR); 42 | if(!p) p = src+strlena(src); 43 | 44 | /* . => skip */ 45 | if(p-src == 1 && *src == '.' ) 46 | { 47 | if(*p) src = ++p; 48 | } 49 | /* .. => pop one */ 50 | else if(p-src == 2 && *src == '.' && src[1] == '.') 51 | { 52 | if(o != dest) 53 | { 54 | CHAR8* tmp; 55 | *o = '\0'; 56 | tmp = strrchra(dest, PATH_CHAR); 57 | if(!tmp) 58 | { 59 | len += o-dest; 60 | o = dest; 61 | if(*p) ++p; 62 | } 63 | else 64 | { 65 | len += o-tmp; 66 | o = tmp; 67 | if(*p) ++p; 68 | } 69 | } 70 | else /* nothing to pop */ 71 | if(*p) ++p; 72 | } 73 | else 74 | { 75 | INTN copy; 76 | if(o != dest) 77 | { 78 | --len; 79 | *o++ = PATH_CHAR; 80 | } 81 | copy = MIN(p-src,len); 82 | CopyMem(o, src, copy); 83 | len -= copy; 84 | src += copy; 85 | o += copy; 86 | if(*p) ++p; 87 | } 88 | while(*p && *p == PATH_CHAR) ++p; 89 | } 90 | o[len?0:-1] = '\0'; 91 | } 92 | -------------------------------------------------------------------------------- /src/this.c: -------------------------------------------------------------------------------- 1 | /* this.c - Reflection data that gets altered for each driver */ 2 | /* 3 | * Copyright © 2014-2017 Pete Batard 4 | * 5 | * This program is free software: you can redistribute it and/or modify 6 | * it under the terms of the GNU General Public License as published by 7 | * the Free Software Foundation, either version 3 of the License, or 8 | * (at your option) any later version. 9 | * 10 | * This program is distributed in the hope that it will be useful, 11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | * GNU General Public License for more details. 14 | * 15 | * You should have received a copy of the GNU General Public License 16 | * along with this program. If not, see . 17 | */ 18 | 19 | #include "config.h" 20 | #include "driver.h" 21 | 22 | // Uncomment the following to disable compression support for NTFS and HFS+ 23 | //#define DISABLE_COMPRESSION 24 | 25 | #if !defined(DRIVERNAME_STR) 26 | #define DRIVERNAME_STR STRINGIFY(DRIVERNAME) 27 | #endif 28 | 29 | CHAR16 *ShortDriverName = WIDEN(STRINGIFY(DRIVERNAME)); 30 | CHAR16 *FullDriverName = L"EfiFs " WIDEN(DRIVERNAME_STR) 31 | L" driver v" WIDEN(STRINGIFY(FS_DRIVER_VERSION_MAJOR)) L"." 32 | WIDEN(STRINGIFY(FS_DRIVER_VERSION_MINOR)) L" (" WIDEN(PACKAGE_STRING) L")"; 33 | 34 | // Setup generic function calls for grub__init and grub__exit 35 | #define MAKE_FN_NAME(module, suffix) grub_ ## module ## _ ## suffix 36 | #define GRUB_FS_CALL(module, suffix) MAKE_FN_NAME(module, suffix) 37 | #define GRUB_DECLARE_MOD(module) \ 38 | extern void GRUB_FS_CALL(module, init)(void); \ 39 | extern void GRUB_FS_CALL(module, fini)(void) 40 | 41 | // Declare all the modules we may need to access 42 | GRUB_DECLARE_MOD(DRIVERNAME); 43 | #if defined(COMPRESSED_DRIVERNAME) && !defined(DISABLE_COMPRESSION) 44 | GRUB_DECLARE_MOD(COMPRESSED_DRIVERNAME); 45 | #endif 46 | #if defined(EXTRAMODULE) 47 | GRUB_DECLARE_MOD(EXTRAMODULE); 48 | #endif 49 | #if defined(EXTRAMODULE2) 50 | GRUB_DECLARE_MOD(EXTRAMODULE2); 51 | #endif 52 | #if defined(EXTRAMODULE3) 53 | GRUB_DECLARE_MOD(EXTRAMODULE3); 54 | #endif 55 | 56 | GRUB_MOD_INIT GrubModuleInit[] = { 57 | GRUB_FS_CALL(DRIVERNAME, init), 58 | #if defined(COMPRESSED_DRIVERNAME) && !defined(DISABLE_COMPRESSION) 59 | GRUB_FS_CALL(COMPRESSED_DRIVERNAME, init), 60 | #endif 61 | #if defined(EXTRAMODULE) 62 | GRUB_FS_CALL(EXTRAMODULE, init), 63 | #endif 64 | #if defined(EXTRAMODULE2) 65 | GRUB_FS_CALL(EXTRAMODULE2, init), 66 | #endif 67 | #if defined(EXTRAMODULE3) 68 | GRUB_FS_CALL(EXTRAMODULE3, init), 69 | #endif 70 | NULL 71 | }; 72 | 73 | GRUB_MOD_EXIT GrubModuleExit[] = { 74 | GRUB_FS_CALL(DRIVERNAME, fini), 75 | #if defined(COMPRESSED_DRIVERNAME) && !defined(DISABLE_COMPRESSION) 76 | GRUB_FS_CALL(COMPRESSED_DRIVERNAME, fini), 77 | #endif 78 | #if defined(EXTRAMODULE) 79 | GRUB_FS_CALL(EXTRAMODULE, fini), 80 | #endif 81 | #if defined(EXTRAMODULE2) 82 | GRUB_FS_CALL(EXTRAMODULE2, fini), 83 | #endif 84 | #if defined(EXTRAMODULE3) 85 | GRUB_FS_CALL(EXTRAMODULE3, fini), 86 | #endif 87 | NULL 88 | }; 89 | 90 | #if defined(__MAKEWITH_GNUEFI) 91 | // Designate the driver entrypoint 92 | EFI_DRIVER_ENTRY_POINT(FSDriverInstall) 93 | #endif 94 | --------------------------------------------------------------------------------