Author: ion Date: Wed Sep 9 18:43:09 2015 New Revision: 69156 URL: http://svn.reactos.org/svn/reactos?rev=69156&view=rev Log: [EFI] - Add BCD creation. - Add BCD to bootcd, and also to EFISYS.BIN. Verified the BCD is now present on the EFI partition.
Added: trunk/reactos/boot/bootdata/hivebcd.inf (with props) Modified: trunk/reactos/boot/CMakeLists.txt trunk/reactos/boot/bootdata/CMakeLists.txt trunk/reactos/cmake/CMakeMacros.cmake trunk/reactos/tools/mkhive/mkhive.c Modified: trunk/reactos/boot/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/CMakeLists.txt?rev=69156&r1=69155&r2=69156&view=diff ============================================================================== --- trunk/reactos/boot/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/boot/CMakeLists.txt [iso-8859-1] Wed Sep 9 18:43:09 2015 @@ -16,7 +16,7 @@ endif() add_custom_target(efisys - COMMAND native-fatten ${CMAKE_CURRENT_BINARY_DIR}/efisys.bin -format 2880 EFIBOOT -boot ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/fat.bin -mkdir EFI -mkdir EFI/BOOT -add $<TARGET_FILE:bootmgfw> EFI/BOOT/boot${EFI_PLATFORM_ID}.efi + COMMAND native-fatten ${CMAKE_CURRENT_BINARY_DIR}/efisys.bin -format 2880 EFIBOOT -boot ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/fat.bin -mkdir EFI -mkdir EFI/BOOT -add $<TARGET_FILE:bootmgfw> EFI/BOOT/boot${EFI_PLATFORM_ID}.efi -add ${CMAKE_BINARY_DIR}/boot/bootdata/BCD EFI/BOOT/BCD DEPENDS native-fatten bootmgfw fat VERBATIM) Modified: trunk/reactos/boot/bootdata/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/CMakeLists.txt?rev=69156&r1=69155&r2=69156&view=diff ============================================================================== --- trunk/reactos/boot/bootdata/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/boot/bootdata/CMakeLists.txt [iso-8859-1] Wed Sep 9 18:43:09 2015 @@ -10,7 +10,8 @@ hivecls.inf hivedef.inf hivesft.inf - hivesys.inf) + hivesys.inf + hivebcd.inf) #regtest Added: trunk/reactos/boot/bootdata/hivebcd.inf URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/hivebcd.inf?rev=69156 ============================================================================== --- trunk/reactos/boot/bootdata/hivebcd.inf (added) +++ trunk/reactos/boot/bootdata/hivebcd.inf [iso-8859-1] Wed Sep 9 18:43:09 2015 @@ -0,0 +1,11 @@ +[Version] +Signature = "$ReactOS$" + +[AddReg] + +HKLM,"BCD00000000\Description\Control","System",0x00010003,1 +HKLM,"BCD00000000\Description\Control","TreatAtSystem",0x00010003,1 +HKLM,"BCD00000000\Description\Control","KeyName",2,"BCD00000000" +HKLM,"BCD00000000\Description\Objects",,0x00000012 + +; EOF Propchange: trunk/reactos/boot/bootdata/hivebcd.inf ------------------------------------------------------------------------------ svn:eol-style = native Modified: trunk/reactos/cmake/CMakeMacros.cmake URL: http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/CMakeMacros.cmake?rev=69156&r1=69155&r2=69156&view=diff ============================================================================== --- trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] (original) +++ trunk/reactos/cmake/CMakeMacros.cmake [iso-8859-1] Wed Sep 9 18:43:09 2015 @@ -793,6 +793,22 @@ DESTINATION reactos/system32/config FOR livecd) + # BCD Hive + add_custom_command( + OUTPUT ${CMAKE_BINARY_DIR}/boot/bootdata/BCD + COMMAND native-mkhive ${CMAKE_BINARY_DIR}/boot/bootdata/ ${CMAKE_BINARY_DIR}/boot/bootdata/hivebcd_utf16.inf + DEPENDS native-mkhive ${CMAKE_SOURCE_DIR}/boot/bootdata/hivebcd.inf) + + add_custom_target(bcd_hive + DEPENDS ${CMAKE_BINARY_DIR}/boot/bootdata/BCD) + + add_cd_file( + FILE ${CMAKE_BINARY_DIR}/boot/bootdata/BCD + TARGET bcd_hive + DESTINATION efi/boot + NO_CAB + FOR bootcd regtest livecd) + endfunction() if(KDBG) Modified: trunk/reactos/tools/mkhive/mkhive.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/tools/mkhive/mkhive.c?rev=69156&r1=69155&r2=69156&view=diff ============================================================================== --- trunk/reactos/tools/mkhive/mkhive.c [iso-8859-1] (original) +++ trunk/reactos/tools/mkhive/mkhive.c [iso-8859-1] Wed Sep 9 18:43:09 2015 @@ -143,6 +143,14 @@ return 1; } + convert_path (FileName, argv[1]); + strcat (FileName, DIR_SEPARATOR_STRING); + strcat (FileName, "bcd"); + if (!ExportBinaryHive (FileName, &SystemHive)) + { + return 1; + } + RegShutdownRegistry (); printf (" Done.\n");