diff --git a/reactos/CMakeMacros.cmake b/reactos/CMakeMacros.cmake index ce0225917b9..2a69760f15a 100644 --- a/reactos/CMakeMacros.cmake +++ b/reactos/CMakeMacros.cmake @@ -175,4 +175,32 @@ function(add_cd_file) endif() endif() #end livecd + #do we add it to regtest? + list(FIND _CD_FOR regtest __cd) + if(NOT __cd EQUAL -1) + #whether or not we should put it in reactos.cab or directly on cd + if(_CD_NO_CAB) + #directly on cd + foreach(item ${_CD_FILE}) + file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcdregtest.cmake "file(COPY \"${item}\" DESTINATION \"\${CD_DIR}/${_CD_DESTINATION}\")\n") + endforeach() + if(_CD_NAME_ON_CD) + get_filename_component(__file ${_CD_FILE} NAME) + #rename it in the cd tree + file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcdregtest.cmake "file(RENAME \${CD_DIR}/${_CD_DESTINATION}/${__file} \${CD_DIR}/${_CD_DESTINATION}/${_CD_NAME_ON_CD})\n") + endif() + if(_CD_TARGET) + #manage dependency + add_dependencies(bootcdregtest ${_CD_TARGET}) + endif() + else() + #add it in reactos.cab + #dir_to_num(${_CD_DESTINATION} _num) + #file(APPEND ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.dff.dyn "${_CD_FILE} ${_num}\n") + #if(_CD_TARGET) + # #manage dependency + # add_dependencies(reactos_cab ${_CD_TARGET}) + #endif() + endif() + endif() #end bootcd endfunction() diff --git a/reactos/base/setup/usetup/CMakeLists.txt b/reactos/base/setup/usetup/CMakeLists.txt index a0f6410702c..95b0ac7b58c 100644 --- a/reactos/base/setup/usetup/CMakeLists.txt +++ b/reactos/base/setup/usetup/CMakeLists.txt @@ -44,4 +44,4 @@ endif() set_module_type(usetup nativecui) add_importlibs(usetup kernel32 ntdll) -add_cd_file(TARGET usetup DESTINATION reactos/system32 NO_CAB NAME_ON_CD smss.exe FOR bootcd) +add_cd_file(TARGET usetup DESTINATION reactos/system32 NO_CAB NAME_ON_CD smss.exe FOR bootcd regtest) diff --git a/reactos/boot/CMakeLists.txt b/reactos/boot/CMakeLists.txt index 3ab10be6768..3ae611023f8 100644 --- a/reactos/boot/CMakeLists.txt +++ b/reactos/boot/CMakeLists.txt @@ -9,6 +9,18 @@ add_custom_target(bootcd COMMAND native-cdmake -v -j -m -b ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/isoboot.bin ${CMAKE_CURRENT_BINARY_DIR}/bootcd REACTOS ${REACTOS_BINARY_DIR}/bootcd.iso VERBATIM) +##bootcdregtest +#clear it out +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.cmake + "file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest)\n") + +add_custom_target(bootcdregtest + ${CMAKE_COMMAND} -D CD_DIR=${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest + -P ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.cmake + COMMAND native-cdmake -v -j -m -b ${CMAKE_CURRENT_BINARY_DIR}/freeldr/bootsect/isobtrt.bin ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest REACTOS ${REACTOS_BINARY_DIR}/bootcdregtest.iso + VERBATIM) + + ##livecd #clear it out file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake diff --git a/reactos/boot/bootdata/CMakeLists.txt b/reactos/boot/bootdata/CMakeLists.txt index edf577bdccb..85757698691 100644 --- a/reactos/boot/bootdata/CMakeLists.txt +++ b/reactos/boot/bootdata/CMakeLists.txt @@ -1,11 +1,11 @@ add_subdirectory(packages) -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/txtsetup.sif DESTINATION reactos NO_CAB FOR bootcd) -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivecls_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivecls.inf FOR bootcd) -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivedef_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivedef.inf FOR bootcd) -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesft_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesft.inf FOR bootcd) -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesys_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesys.inf FOR bootcd) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/txtsetup.sif DESTINATION reactos NO_CAB FOR bootcd regtest) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivecls_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivecls.inf FOR bootcd regtest) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivedef_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivedef.inf FOR bootcd regtest) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesft_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesft.inf FOR bootcd regtest) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hivesys_${ARCH}.inf DESTINATION reactos NO_CAB NAME_ON_CD hivesys.inf FOR bootcd regtest) # livecd hives list(APPEND CD_HIVES @@ -42,6 +42,10 @@ add_cd_file( add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/regtest.cmd DESTINATION reactos/bin FOR all) #freeldr.ini -add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd.ini DESTINATION root NO_CAB NAME_ON_CD freeldr.ini FOR bootcd) +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd.ini DESTINATION root NO_CAB NAME_ON_CD freeldr.ini FOR bootcd regtest) add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/livecd.ini DESTINATION root NAME_ON_CD freeldr.ini FOR livecd) +#unattend +add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/unattend.inf DESTINATION reactos NO_CAB FOR regtest) +#uncomment this for unattend bootcd +#add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd/unattend.inf DESTINATION reactos NO_CAB FOR bootcd) \ No newline at end of file diff --git a/reactos/boot/bootdata/bootcd/bootcd.rbuild b/reactos/boot/bootdata/bootcd/bootcd.rbuild index f84fa71372b..4896a937edb 100644 --- a/reactos/boot/bootdata/bootcd/bootcd.rbuild +++ b/reactos/boot/bootdata/bootcd/bootcd.rbuild @@ -4,6 +4,7 @@ isoboot + diff --git a/reactos/boot/bootdata/bootcd/unattend.inf b/reactos/boot/bootdata/bootcd/unattend.inf new file mode 100644 index 00000000000..d75a3258789 --- /dev/null +++ b/reactos/boot/bootdata/bootcd/unattend.inf @@ -0,0 +1,60 @@ +; In order to get unattended setup working: +; 1. Copy unattend.inf.sample to unattend.inf, adjust as needed +; 2. Uncomment the line in bootdata.rbuild to include it into bootcd + +[Unattend] +Signature = "$ReactOS$" + +; yes - unattend setup enabled +; no - unattend setup disabled +UnattendSetupEnabled = no + +; Install to \Device\Harddisk0\Partition1\ReactOS +DestinationDiskNumber = 0 +DestinationPartitionNumber = 1 +InstallationDirectory=ReactOS + +; MBRInstallType=0 skips MBR installation +; MBRInstallType=1 install MBR on floppy +; MBRInstallType=2 install MBR on hdd +MBRInstallType=2 + +FullName="MyName" +;OrgName="MyOrg" +ComputerName="MYCOMPUTERNAME"; +AdminPassword="MyPassword" + +; TimeZone is set GMT as default +TimeZoneIndex=85 + +; enable this setting to disable daylight saving changes +; DisableAutoDaylightTimeSet = 1 + +; enable this setting to format the selected partition +; 1 - format enabled +; 0 - format disabled +FormatPartition=1 + +; enable this setting to automatically create a partition +; during installation +; 1 - enabled +; 0 - disabled +AutoPartition = 1 + +; enable this setting to disable vmware driver install +; yes - disabled +; no - enabled +DisableVmwInst = yes + +; set this option to automatically +; specify language in 2nd mode setup +; see hivesys.inf for available languages +; LocaleID = 407 + + +; enable this section to automatically launch programs +; after 3rd boot +; +; [GuiRunOnce] +; %SystemRoot%\system32\cmd.exe + diff --git a/reactos/boot/bootdata/packages/CMakeLists.txt b/reactos/boot/bootdata/packages/CMakeLists.txt index 9f0ca7eac9a..a9c7dbe4867 100644 --- a/reactos/boot/bootdata/packages/CMakeLists.txt +++ b/reactos/boot/bootdata/packages/CMakeLists.txt @@ -42,4 +42,4 @@ add_custom_target(reactos_cab DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf VERBATIM) -add_cd_file(TARGET reactos_cab FILE ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf DESTINATION reactos NO_CAB FOR bootcd) +add_cd_file(TARGET reactos_cab FILE ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf DESTINATION reactos NO_CAB FOR bootcd regtest)