mirror of
https://github.com/reactos/reactos.git
synced 2025-02-28 19:32:59 +00:00
**** DO NOT COMMIT!! -- Temp VBoxDbg bootcd ****
** WIP ** Make it start again [REACTOS] Introduce the experimental all-in-one ReactOS BootCD *** [REACTOS] Re-enable reboot at the end of setup
This commit is contained in:
parent
4920e639f9
commit
7607718847
24 changed files with 161 additions and 305 deletions
11
.github/workflows/build.yml
vendored
11
.github/workflows/build.yml
vendored
|
@ -70,7 +70,7 @@ jobs:
|
||||||
- name: Build
|
- name: Build
|
||||||
run: echo 'cmake --build ${{github.workspace}}/build -- -k0' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
run: echo 'cmake --build ${{github.workspace}}/build -- -k0' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
||||||
- name: Generate ISOs
|
- name: Generate ISOs
|
||||||
run: echo 'cmake --build ${{github.workspace}}/build --target bootcd --target livecd' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
run: echo 'cmake --build ${{github.workspace}}/build --target bootcd' | ${{github.workspace}}/RosBE-CI/RosBE.sh . 0 ${{matrix.arch}}
|
||||||
- name: Print ccache statistics
|
- name: Print ccache statistics
|
||||||
run: ccache -s
|
run: ccache -s
|
||||||
- name: Upload ISOs
|
- name: Upload ISOs
|
||||||
|
@ -79,7 +79,6 @@ jobs:
|
||||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||||
path: |
|
path: |
|
||||||
build/bootcd.iso
|
build/bootcd.iso
|
||||||
build/livecd.iso
|
|
||||||
|
|
||||||
build-msvc:
|
build-msvc:
|
||||||
strategy:
|
strategy:
|
||||||
|
@ -127,14 +126,13 @@ jobs:
|
||||||
- name: Build
|
- name: Build
|
||||||
run: cmake --build build -- -k0
|
run: cmake --build build -- -k0
|
||||||
- name: Generate ISOs
|
- name: Generate ISOs
|
||||||
run: cmake --build build --target bootcd --target livecd
|
run: cmake --build build --target bootcd
|
||||||
- name: Upload ISOs
|
- name: Upload ISOs
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{matrix.dllver}}-${{github.sha}}
|
||||||
path: |
|
path: |
|
||||||
build/bootcd.iso
|
build/bootcd.iso
|
||||||
build/livecd.iso
|
|
||||||
- name: Upload debug symbols
|
- name: Upload debug symbols
|
||||||
if: ${{ matrix.config == 'Debug' }}
|
if: ${{ matrix.config == 'Debug' }}
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
@ -268,14 +266,13 @@ jobs:
|
||||||
- name: Build
|
- name: Build
|
||||||
run: cmake --build build -- -k0
|
run: cmake --build build -- -k0
|
||||||
- name: Generate ISOs
|
- name: Generate ISOs
|
||||||
run: cmake --build build --target bootcd --target livecd
|
run: cmake --build build --target bootcd
|
||||||
- name: Upload ISOs
|
- name: Upload ISOs
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: reactos-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
name: reactos-clang-cl-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
||||||
path: |
|
path: |
|
||||||
build/bootcd.iso
|
build/bootcd.iso
|
||||||
build/livecd.iso
|
|
||||||
- name: Upload debug symbols
|
- name: Upload debug symbols
|
||||||
if: ${{ matrix.config == 'Debug' }}
|
if: ${{ matrix.config == 'Debug' }}
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
@ -307,4 +304,4 @@ jobs:
|
||||||
cd build
|
cd build
|
||||||
cmake -G "Visual Studio 17 2022" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
cmake -G "Visual Studio 17 2022" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
||||||
- name: Build
|
- name: Build
|
||||||
run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd
|
run: cmake --build ${{github.workspace}}\build --target bootcd
|
||||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -3,7 +3,6 @@ output-*
|
||||||
modules/optional
|
modules/optional
|
||||||
modules/bootcd_extras
|
modules/bootcd_extras
|
||||||
modules/livecd_extras
|
modules/livecd_extras
|
||||||
modules/hybridcd_extras
|
|
||||||
modules/3rdparty
|
modules/3rdparty
|
||||||
modules/[Aa][Hh][Kk]_[Tt]ests
|
modules/[Aa][Hh][Kk]_[Tt]ests
|
||||||
.cache
|
.cache
|
||||||
|
|
|
@ -3,17 +3,6 @@
|
||||||
// Hover to view descriptions of existing attributes.
|
// Hover to view descriptions of existing attributes.
|
||||||
"version": "0.2.0",
|
"version": "0.2.0",
|
||||||
"configurations": [
|
"configurations": [
|
||||||
{
|
|
||||||
"type": "cppdbg",
|
|
||||||
"request": "launch",
|
|
||||||
"name": "livecd (qemu)",
|
|
||||||
"preLaunchTask": "launch livecd",
|
|
||||||
"miDebuggerServerAddress": "localhost:9091",
|
|
||||||
"miDebuggerArgs": "-l 15 -ex 'set sysroot ${workspaceRoot}/build/symbols'",
|
|
||||||
"program": "${workspaceRoot}/build/ntoskrnl/ntoskrnl.exe",
|
|
||||||
"cwd": "${workspaceRoot}/build",
|
|
||||||
"miDebuggerPath": "i686-w64-mingw32-gdb"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"type": "cppdbg",
|
"type": "cppdbg",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
|
|
|
@ -1,18 +1,19 @@
|
||||||
{
|
{
|
||||||
// See https://go.microsoft.com/fwlink/?LinkId=733558
|
// See https://go.microsoft.com/fwlink/?LinkId=733558
|
||||||
// for the documentation about the tasks.json format
|
// for the documentation about the tasks.json format
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"tasks": [
|
"tasks": [
|
||||||
{
|
{
|
||||||
"label": "build livecd",
|
"label": "build bootcd",
|
||||||
"type": "shell",
|
"type": "shell",
|
||||||
"command": "ninja livecd",
|
"command": "ninja bootcd",
|
||||||
"options": {
|
"options": {
|
||||||
"cwd": "${workspaceFolder}/build"
|
"cwd": "${workspaceFolder}/build"
|
||||||
},
|
},
|
||||||
"group": "build",
|
"group": "build",
|
||||||
"problemMatcher": [
|
"problemMatcher": [
|
||||||
{
|
{
|
||||||
|
"base": "$gcc",
|
||||||
"owner": "cpp",
|
"owner": "cpp",
|
||||||
"fileLocation": ["relative", "${workspaceFolder}/build"],
|
"fileLocation": ["relative", "${workspaceFolder}/build"],
|
||||||
"pattern": {
|
"pattern": {
|
||||||
|
@ -26,43 +27,6 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"label": "build bootcd",
|
|
||||||
"type": "shell",
|
|
||||||
"command": "ninja bootcd",
|
|
||||||
"options": {
|
|
||||||
"cwd": "${workspaceFolder}/build"
|
|
||||||
},
|
|
||||||
"group": "build",
|
|
||||||
"problemMatcher": [
|
|
||||||
{
|
|
||||||
"base": "$gcc",
|
|
||||||
"fileLocation": ["relative", "${workspaceFolder}/build"],
|
|
||||||
},
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"label": "launch livecd",
|
|
||||||
"type": "process",
|
|
||||||
"options": {
|
|
||||||
"cwd": "${workspaceFolder}/build"
|
|
||||||
},
|
|
||||||
"dependsOn": [
|
|
||||||
"build livecd"
|
|
||||||
],
|
|
||||||
"dependsOrder": "sequence",
|
|
||||||
"command": "qemu-system-i386",
|
|
||||||
"args": [
|
|
||||||
"-cdrom", "livecd.iso",
|
|
||||||
"-chardev", "socket,port=9091,host=localhost,server,nowait,id=char0",
|
|
||||||
"-serial", "chardev:char0",
|
|
||||||
"-nic", "user,model=e1000",
|
|
||||||
"-boot", "d",
|
|
||||||
"-chardev", "socket,path=/tmp/livecd_dbg,server,nowait,id=char1", "-serial", "chardev:char1",
|
|
||||||
"-daemonize"
|
|
||||||
],
|
|
||||||
"problemMatcher": []
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"label": "launch bootcd",
|
"label": "launch bootcd",
|
||||||
"type": "process",
|
"type": "process",
|
||||||
|
|
|
@ -27,4 +27,7 @@ if(ARCH STREQUAL "i386")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_cd_file(TARGET welcome DESTINATION reactos NO_CAB FOR bootcd)
|
add_cd_file(TARGET welcome DESTINATION reactos FOR all)
|
||||||
|
|
||||||
|
# Welcome.exe renamed as Setup.exe for the BootCD
|
||||||
|
add_cd_file(TARGET welcome DESTINATION root NO_CAB NAME_ON_CD setup.exe FOR bootcd)
|
||||||
|
|
|
@ -807,6 +807,7 @@ StartDlgProc(
|
||||||
pState->NextPage = DONE;
|
pState->NextPage = DONE;
|
||||||
pState->Run = INSTALLER;
|
pState->Run = INSTALLER;
|
||||||
EndDialog(hwndDlg, LOWORD(wParam));
|
EndDialog(hwndDlg, LOWORD(wParam));
|
||||||
|
// TODO: Just hide the dialog, and show it again in case the child process (setup) dies?
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IDOK:
|
case IDOK:
|
||||||
|
|
|
@ -116,9 +116,9 @@ add_custom_target(bootcd
|
||||||
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
||||||
-eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
-eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
||||||
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
||||||
-no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcd.$<CONFIG>.lst
|
-duplicates-once -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcd.$<CONFIG>.lst
|
||||||
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/bootcd.iso
|
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/bootcd.iso
|
||||||
DEPENDS isombr native-isohybrid native-mkisofs
|
DEPENDS isombr native-isohybrid native-mkisofs livecd
|
||||||
VERBATIM)
|
VERBATIM)
|
||||||
|
|
||||||
## BootCDRegTest
|
## BootCDRegTest
|
||||||
|
@ -131,12 +131,12 @@ add_custom_target(bootcdregtest
|
||||||
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
||||||
-eltorito-boot loader/isobtrt.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
-eltorito-boot loader/isobtrt.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
||||||
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
||||||
-no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.$<CONFIG>.lst
|
-duplicates-once -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/bootcdregtest.$<CONFIG>.lst
|
||||||
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/bootcdregtest.iso
|
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/bootcdregtest.iso
|
||||||
DEPENDS isombr native-isohybrid native-mkisofs
|
DEPENDS isombr native-isohybrid native-mkisofs
|
||||||
VERBATIM)
|
VERBATIM)
|
||||||
|
|
||||||
## LiveCD
|
## LiveImage -- Constitutes a small RAMDISK ISO, and is also merged with the regular BootCD
|
||||||
# Create the file list
|
# Create the file list
|
||||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "")
|
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "")
|
||||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "${CMAKE_CURRENT_BINARY_DIR}/empty\n")
|
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "${CMAKE_CURRENT_BINARY_DIR}/empty\n")
|
||||||
|
@ -149,42 +149,20 @@ add_allusers_profile_dirs(${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "Profiles
|
||||||
add_user_profile_dirs(${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "Profiles" "Default User")
|
add_user_profile_dirs(${CMAKE_CURRENT_BINARY_DIR}/livecd.cmake.lst "Profiles" "Default User")
|
||||||
|
|
||||||
add_custom_target(livecd
|
add_custom_target(livecd
|
||||||
COMMAND native-mkisofs -quiet -o ${REACTOS_BINARY_DIR}/livecd.iso -iso-level 4
|
COMMAND native-mkisofs -quiet -o ${REACTOS_BINARY_DIR}/liveimg.iso -iso-level 4
|
||||||
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
||||||
-eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
-duplicates-once -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/livecd.$<CONFIG>.lst
|
||||||
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
DEPENDS native-mkisofs
|
||||||
-no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/livecd.$<CONFIG>.lst
|
|
||||||
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/livecd.iso
|
|
||||||
DEPENDS isombr native-isohybrid native-mkisofs
|
|
||||||
VERBATIM)
|
|
||||||
|
|
||||||
## HybridCD
|
|
||||||
# Create the file list
|
|
||||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/hybridcd.cmake.lst "")
|
|
||||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/hybridcd.cmake.lst "${CMAKE_CURRENT_BINARY_DIR}/empty\n")
|
|
||||||
|
|
||||||
# Create user profile directories
|
|
||||||
add_allusers_profile_dirs(${CMAKE_CURRENT_BINARY_DIR}/hybridcd.cmake.lst "livecd/Profiles")
|
|
||||||
add_user_profile_dirs(${CMAKE_CURRENT_BINARY_DIR}/hybridcd.cmake.lst "livecd/Profiles" "Default User")
|
|
||||||
|
|
||||||
add_custom_target(hybridcd
|
|
||||||
COMMAND native-mkisofs -quiet -o ${REACTOS_BINARY_DIR}/hybridcd.iso -iso-level 4
|
|
||||||
-publisher ${ISO_MANUFACTURER} -preparer ${ISO_MANUFACTURER} -volid ${ISO_VOLNAME} -volset ${ISO_VOLNAME}
|
|
||||||
-eltorito-boot loader/isoboot.bin -no-emul-boot -boot-load-size 4 ${ISO_EFI_BOOT_PARAMS} -hide boot.catalog
|
|
||||||
-sort ${CMAKE_CURRENT_BINARY_DIR}/bootfiles.sort
|
|
||||||
-duplicates-once -no-cache-inodes -graft-points -path-list ${CMAKE_CURRENT_BINARY_DIR}/hybridcd.$<CONFIG>.lst
|
|
||||||
COMMAND native-isohybrid -b ${_isombr_file} -t 0x96 ${REACTOS_BINARY_DIR}/hybridcd.iso
|
|
||||||
DEPENDS bootcd livecd
|
|
||||||
VERBATIM)
|
VERBATIM)
|
||||||
|
|
||||||
if(DEFINED EFI_PLATFORM_ID)
|
if(DEFINED EFI_PLATFORM_ID)
|
||||||
# For things like flashing USB drives, we also add the efi file into efi/boot.
|
# For things like flashing USB drives, we also add the efi file into efi/boot.
|
||||||
add_cd_file(TARGET efisys FILE ${CMAKE_CURRENT_BINARY_DIR}/efisys.bin DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FOR bootcd regtest livecd hybridcd)
|
add_cd_file(TARGET efisys FILE ${CMAKE_CURRENT_BINARY_DIR}/efisys.bin DESTINATION loader NO_CAB FOR bootcd regtest)
|
||||||
|
|
||||||
add_cd_file(
|
add_cd_file(
|
||||||
TARGET uefildr
|
TARGET uefildr
|
||||||
DESTINATION efi/boot
|
DESTINATION efi/boot
|
||||||
NO_CAB
|
NO_CAB
|
||||||
NAME_ON_CD boot${EFI_PLATFORM_ID}.efi
|
NAME_ON_CD boot${EFI_PLATFORM_ID}.efi
|
||||||
FOR livecd hybridcd)
|
FOR bootcd)
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -1,14 +1,14 @@
|
||||||
|
|
||||||
add_subdirectory(packages)
|
add_subdirectory(packages)
|
||||||
|
|
||||||
# Common hives
|
# Setup settings file
|
||||||
|
|
||||||
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}/txtsetup.sif DESTINATION reactos NO_CAB FOR bootcd regtest)
|
||||||
|
|
||||||
add_custom_target(converted_caroots_inf DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf)
|
add_custom_target(converted_caroots_inf DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf)
|
||||||
utf16le_convert(${CMAKE_CURRENT_SOURCE_DIR}/caroots.inf ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf)
|
utf16le_convert(${CMAKE_CURRENT_SOURCE_DIR}/caroots.inf ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf)
|
||||||
add_cd_file(TARGET converted_caroots_inf FILE ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf DESTINATION reactos NO_CAB FOR bootcd regtest)
|
add_cd_file(TARGET converted_caroots_inf FILE ${CMAKE_CURRENT_BINARY_DIR}/caroots.inf DESTINATION reactos NO_CAB FOR bootcd regtest)
|
||||||
|
|
||||||
|
# Common hives
|
||||||
add_registry_inf(
|
add_registry_inf(
|
||||||
hivecls.inf
|
hivecls.inf
|
||||||
hivedef.inf
|
hivedef.inf
|
||||||
|
@ -16,26 +16,24 @@ add_registry_inf(
|
||||||
hivesys.inf
|
hivesys.inf
|
||||||
hivebcd.inf)
|
hivebcd.inf)
|
||||||
|
|
||||||
|
|
||||||
# Regtest
|
# Regtest
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/regtest.cmd DESTINATION reactos/bin FOR all)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/regtest.cmd DESTINATION reactos/bin FOR all)
|
||||||
|
|
||||||
# autorun.inf
|
# autorun.inf
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/autorun-bootcd.inf DESTINATION root NO_CAB NOT_IN_HYBRIDCD NAME_ON_CD autorun.inf FOR bootcd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/autorun.inf DESTINATION root NO_CAB FOR bootcd)
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/autorun-livecd.inf DESTINATION root NO_CAB NOT_IN_HYBRIDCD NAME_ON_CD autorun.inf FOR livecd)
|
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/autorun-hybridcd.inf DESTINATION root NO_CAB NOT_IN_HYBRIDCD NAME_ON_CD autorun.inf FOR hybridcd)
|
|
||||||
|
|
||||||
# icon.ico
|
# icon.ico
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/icon.ico DESTINATION root NO_CAB NOT_IN_HYBRIDCD FOR all hybridcd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/icon.ico DESTINATION root NO_CAB FOR bootcd)
|
||||||
|
|
||||||
# readme.txt
|
# readme.txt
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/readme.txt DESTINATION root NO_CAB NOT_IN_HYBRIDCD FOR all hybridcd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/readme.txt DESTINATION root NO_CAB FOR bootcd regtest)
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/readme.txt DESTINATION reactos FOR all)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/readme.txt DESTINATION reactos FOR all)
|
||||||
|
|
||||||
# Welcome.exe optional custom configuration (only for HybridCD)
|
## NOTE: The root file Setup.exe is a renamed Welcome.exe for BootCD purposes.
|
||||||
|
# Welcome.exe optional custom configuration (only for LiveCD)
|
||||||
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/)
|
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/)
|
||||||
# Copy the main configuration file
|
# Copy the main configuration file
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/welcome.ini DESTINATION bootcd/reactos NO_CAB FOR hybridcd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/welcome.ini DESTINATION reactos NO_CAB FOR livecd)
|
||||||
|
|
||||||
# Convert the translation files (name format: xx-YY.ini) into UTF-16
|
# Convert the translation files (name format: xx-YY.ini) into UTF-16
|
||||||
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/welcome_config)
|
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/welcome_config)
|
||||||
|
@ -44,23 +42,21 @@ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/)
|
||||||
set(_converted_file ${CMAKE_CURRENT_BINARY_DIR}/welcome_config/${_file})
|
set(_converted_file ${CMAKE_CURRENT_BINARY_DIR}/welcome_config/${_file})
|
||||||
set(_source_file ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/${_file})
|
set(_source_file ${CMAKE_CURRENT_SOURCE_DIR}/welcome_config/${_file})
|
||||||
utf16le_convert(${_source_file} ${_converted_file})
|
utf16le_convert(${_source_file} ${_converted_file})
|
||||||
add_cd_file(TARGET converted_welcome_i18n_files FILE ${_converted_file} DESTINATION bootcd/reactos/welcome NO_CAB NAME_ON_CD ${_file} FOR hybridcd)
|
add_cd_file(TARGET converted_welcome_i18n_files FILE ${_converted_file} DESTINATION reactos/welcome NO_CAB NAME_ON_CD ${_file} FOR livecd)
|
||||||
list(APPEND _converted_welcome_i18n_files ${_converted_file})
|
list(APPEND _converted_welcome_i18n_files ${_converted_file})
|
||||||
endforeach(_file)
|
endforeach(_file)
|
||||||
add_custom_target(converted_welcome_i18n_files DEPENDS ${_converted_welcome_i18n_files})
|
add_custom_target(converted_welcome_i18n_files DEPENDS ${_converted_welcome_i18n_files})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# freeldr.ini
|
# freeldr.ini
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd.ini DESTINATION root NO_CAB NOT_IN_HYBRIDCD NAME_ON_CD freeldr.ini FOR bootcd regtest)
|
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}/livecd.ini DESTINATION root NOT_IN_HYBRIDCD NAME_ON_CD freeldr.ini FOR livecd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd-regtest.ini DESTINATION root NO_CAB NAME_ON_CD freeldr.ini FOR regtest)
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hybridcd.ini DESTINATION root NAME_ON_CD freeldr.ini FOR hybridcd)
|
|
||||||
|
|
||||||
# Unattend
|
# Unattend
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/unattend.inf DESTINATION reactos NO_CAB FOR regtest)
|
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd/unattend.inf DESTINATION reactos NO_CAB FOR bootcd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcd/unattend.inf DESTINATION reactos NO_CAB FOR bootcd)
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/livecd/unattend.inf DESTINATION reactos NO_CAB FOR livecd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/bootcdregtest/unattend.inf DESTINATION reactos NO_CAB FOR regtest)
|
||||||
|
|
||||||
# LiveCD shortcuts
|
# LiveImage shortcuts
|
||||||
macro(add_livecd_shortcut name app dest)
|
macro(add_livecd_shortcut name app dest)
|
||||||
add_link(NAME ${name} CMD_LINE_ARGS ${app} ICON ${app} PATH livecd_start.cmd GUID "{450D8FBA-AD25-11D0-98A8-0800361B1103}" MINIMIZE)
|
add_link(NAME ${name} CMD_LINE_ARGS ${app} ICON ${app} PATH livecd_start.cmd GUID "{450D8FBA-AD25-11D0-98A8-0800361B1103}" MINIMIZE)
|
||||||
list(APPEND LIVECD_SHORTCUTS "${CMAKE_CURRENT_BINARY_DIR}/${name}.lnk")
|
list(APPEND LIVECD_SHORTCUTS "${CMAKE_CURRENT_BINARY_DIR}/${name}.lnk")
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[autorun]
|
|
||||||
open=reactos\welcome.exe
|
|
||||||
icon=icon.ico
|
|
|
@ -1,3 +0,0 @@
|
||||||
[autorun]
|
|
||||||
open=bootcd\reactos\welcome.exe
|
|
||||||
icon=icon.ico
|
|
|
@ -1,3 +1,3 @@
|
||||||
[autorun]
|
[autorun]
|
||||||
shellexecute=readme.txt
|
open=setup.exe
|
||||||
icon=icon.ico
|
icon=icon.ico
|
13
boot/bootdata/bootcd-regtest.ini
Normal file
13
boot/bootdata/bootcd-regtest.ini
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
[FREELOADER]
|
||||||
|
DefaultOS=Setup
|
||||||
|
TimeOut=0
|
||||||
|
|
||||||
|
[Display]
|
||||||
|
TitleText=ReactOS Setup
|
||||||
|
MinimalUI=Yes
|
||||||
|
|
||||||
|
[Operating Systems]
|
||||||
|
Setup="Setup"
|
||||||
|
|
||||||
|
[Setup]
|
||||||
|
BootType=ReactOSSetup
|
|
@ -1,19 +1,33 @@
|
||||||
[FREELOADER]
|
[FREELOADER]
|
||||||
DefaultOS=Setup
|
DefaultOS=LiveCD_Debug
|
||||||
TimeOut=0
|
TimeOut=10
|
||||||
|
|
||||||
[Display]
|
[Display]
|
||||||
TitleText=ReactOS Setup
|
TitleText=ReactOS Setup & Live BootCD
|
||||||
MinimalUI=Yes
|
MinimalUI=Yes
|
||||||
|
|
||||||
[Operating Systems]
|
[Operating Systems]
|
||||||
Setup="Setup"
|
Setup="ReactOS Setup (Text Mode)"
|
||||||
Setup_Debug="Setup (Debug)"
|
Setup_Debug="Setup (Debug)"
|
||||||
Setup_Aacpi="Setup ACPI APIC (Debug)"
|
Setup_Aacpi="Setup ACPI APIC (Debug)"
|
||||||
Setup_Screen="Setup (Screen)"
|
Setup_Screen="Setup (Screen)"
|
||||||
|
;;;;
|
||||||
|
LiveCD="ReactOS Setup (Graphics Mode) & Live"
|
||||||
|
LiveCD_Debug="ReactOS Live (Debug)"
|
||||||
|
LiveCD_Macpi="LiveCD ACPI SMP (Debug)"
|
||||||
|
LiveCD_Aacpi="LiveCD ACPI APIC (Debug)"
|
||||||
|
LiveCD_VBoxDebug="ReactOS Live (VBox Debug)"
|
||||||
|
LiveCD_Screen="ReactOS Live (Screen)"
|
||||||
|
; LiveCD_LogFile="ReactOS Live (Log file)"
|
||||||
|
LiveCD_RamDisk="ReactOS Setup (Graphics Mode) & Live in RAM"
|
||||||
|
LiveCD_RamDisk_Debug="ReactOS Live in RAM (Debug)"
|
||||||
|
LiveCD_RamDisk_Screen="ReactOS Live in RAM (Screen)"
|
||||||
|
;;;;
|
||||||
|
HddBoot="Boot from first hard disk"
|
||||||
|
|
||||||
[Setup]
|
[Setup]
|
||||||
BootType=ReactOSSetup
|
BootType=ReactOSSetup
|
||||||
|
SystemPath=\
|
||||||
|
|
||||||
[Setup_Debug]
|
[Setup_Debug]
|
||||||
BootType=ReactOSSetup
|
BootType=ReactOSSetup
|
||||||
|
@ -26,3 +40,57 @@ Options=/HAL=halaacpi.dll /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /NOGUIBOOT /SI
|
||||||
[Setup_Screen]
|
[Setup_Screen]
|
||||||
BootType=ReactOSSetup
|
BootType=ReactOSSetup
|
||||||
Options=/DEBUG /DEBUGPORT=SCREEN /SIFOPTIONSOVERRIDE
|
Options=/DEBUG /DEBUGPORT=SCREEN /SIFOPTIONSOVERRIDE
|
||||||
|
|
||||||
|
[LiveCD]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_Debug]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_Macpi]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/HAL=halmacpi.dll /KERNEL=ntkrnlmp.exe /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_Aacpi]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/HAL=halaacpi.dll /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_VBoxDebug]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/DEBUG /DEBUGPORT=VBOX /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_Screen]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=\reactos
|
||||||
|
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
; [LiveCD_LogFile]
|
||||||
|
; BootType=Windows2003
|
||||||
|
; SystemPath=\reactos
|
||||||
|
; Options=/DEBUG /DEBUGPORT=FILE:\Device\HarddiskX\PartitionY\debug.log /SOS /FASTDETECT /MININT
|
||||||
|
|
||||||
|
[LiveCD_RamDisk]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=ramdisk(0)\reactos
|
||||||
|
Options=/FASTDETECT /MININT /RDPATH=liveimg.iso /RDEXPORTASCD
|
||||||
|
|
||||||
|
[LiveCD_RamDisk_Debug]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=ramdisk(0)\reactos
|
||||||
|
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT /RDPATH=liveimg.iso /RDEXPORTASCD
|
||||||
|
|
||||||
|
[LiveCD_RamDisk_Screen]
|
||||||
|
BootType=Windows2003
|
||||||
|
SystemPath=ramdisk(0)\reactos
|
||||||
|
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /FASTDETECT /MININT /RDPATH=liveimg.iso /RDEXPORTASCD
|
||||||
|
|
||||||
|
[HddBoot]
|
||||||
|
BootType=Drive
|
||||||
|
BootDrive=hd0
|
||||||
|
|
|
@ -1,68 +0,0 @@
|
||||||
[FREELOADER]
|
|
||||||
DefaultOS=Setup
|
|
||||||
TimeOut=5
|
|
||||||
|
|
||||||
[Display]
|
|
||||||
TitleText=ReactOS Hybrid-CD
|
|
||||||
MinimalUI=Yes
|
|
||||||
|
|
||||||
[Operating Systems]
|
|
||||||
Setup="Setup"
|
|
||||||
Setup_Debug="Setup (Debug)"
|
|
||||||
Setup_Screen="Setup (Screen)"
|
|
||||||
LiveCD="LiveCD"
|
|
||||||
LiveCD_Debug="LiveCD (Debug)"
|
|
||||||
LiveCD_Screen="LiveCD (Screen)"
|
|
||||||
LiveCD_LogFile="LiveCD (Log file)"
|
|
||||||
LiveCD_RamDisk="LiveCD in RAM"
|
|
||||||
LiveCD_RamDisk_Debug="LiveCD in RAM (Debug)"
|
|
||||||
LiveCD_RamDisk_Screen="LiveCD in RAM (Screen)"
|
|
||||||
|
|
||||||
[Setup]
|
|
||||||
BootType=ReactOSSetup
|
|
||||||
SystemPath=\bootcd
|
|
||||||
|
|
||||||
[Setup_Debug]
|
|
||||||
BootType=ReactOSSetup
|
|
||||||
SystemPath=\bootcd
|
|
||||||
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /NOGUIBOOT /SIFOPTIONSOVERRIDE
|
|
||||||
|
|
||||||
[Setup_Screen]
|
|
||||||
BootType=ReactOSSetup
|
|
||||||
SystemPath=\bootcd
|
|
||||||
Options=/DEBUG /DEBUGPORT=SCREEN /SIFOPTIONSOVERRIDE
|
|
||||||
|
|
||||||
[LiveCD]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\livecd\reactos
|
|
||||||
Options=/MININT
|
|
||||||
|
|
||||||
[LiveCD_Debug]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\livecd\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT
|
|
||||||
|
|
||||||
[LiveCD_Screen]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\livecd\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT
|
|
||||||
|
|
||||||
[LiveCD_LogFile]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\livecd\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=FILE:\Device\HarddiskX\PartitionY\debug.log /SOS /MININT
|
|
||||||
|
|
||||||
[LiveCD_RamDisk]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=ramdisk(0)\reactos
|
|
||||||
Options=/MININT /RDPATH=livecd\livecd.iso /RDEXPORTASCD
|
|
||||||
|
|
||||||
[LiveCD_RamDisk_Debug]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=ramdisk(0)\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /MININT /RDPATH=livecd\livecd.iso /RDEXPORTASCD
|
|
||||||
|
|
||||||
[LiveCD_RamDisk_Screen]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=ramdisk(0)\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /MININT /RDPATH=livecd\livecd.iso /RDEXPORTASCD
|
|
|
@ -1,51 +0,0 @@
|
||||||
[FREELOADER]
|
|
||||||
DefaultOS=LiveCD_Debug
|
|
||||||
TimeOut=5
|
|
||||||
|
|
||||||
[Display]
|
|
||||||
TitleText=ReactOS LiveCD
|
|
||||||
MinimalUI=Yes
|
|
||||||
|
|
||||||
[Operating Systems]
|
|
||||||
LiveCD="LiveCD"
|
|
||||||
LiveCD_Debug="LiveCD (Debug)"
|
|
||||||
LiveCD_Macpi="LiveCD ACPI SMP (Debug)"
|
|
||||||
LiveCD_Aacpi="LiveCD ACPI APIC (Debug)"
|
|
||||||
LiveCD_VBoxDebug="LiveCD (VBox Debug)"
|
|
||||||
LiveCD_Screen="LiveCD (Screen)"
|
|
||||||
LiveCD_LogFile="LiveCD (Log file)"
|
|
||||||
|
|
||||||
[LiveCD]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_Debug]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_Macpi]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/HAL=halmacpi.dll /KERNEL=ntkrnlmp.exe /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_Aacpi]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/HAL=halaacpi.dll /DEBUG /DEBUGPORT=COM1 /BAUDRATE=115200 /SOS /FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_VBoxDebug]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=VBOX /SOS /FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_Screen]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=SCREEN /SOS /FASTDETECT /MININT
|
|
||||||
|
|
||||||
[LiveCD_LogFile]
|
|
||||||
BootType=Windows2003
|
|
||||||
SystemPath=\reactos
|
|
||||||
Options=/DEBUG /DEBUGPORT=FILE:\Device\HarddiskX\PartitionY\debug.log /SOS /FASTDETECT /MININT
|
|
|
@ -15,8 +15,7 @@ Signature = "$Windows NT$"
|
||||||
_1 = %cdname%,%cdtagfile%,,""
|
_1 = %cdname%,%cdtagfile%,,""
|
||||||
|
|
||||||
[SourceDisksNames.x86]
|
[SourceDisksNames.x86]
|
||||||
;1 = %cdname%,%cdtagfilei%,,\i386
|
1 = %cdname%,%cdtagfilei%,,\i386
|
||||||
1 = %cdname%,%cdtagfilei%,,\reactos
|
|
||||||
|
|
||||||
[SourceDisksNames.amd64]
|
[SourceDisksNames.amd64]
|
||||||
;1 = %cdname%,%cdtagfilea%,,\amd64
|
;1 = %cdname%,%cdtagfilea%,,\amd64
|
||||||
|
@ -214,7 +213,8 @@ Cabinet=reactos.cab
|
||||||
|
|
||||||
[SetupData]
|
[SetupData]
|
||||||
DefaultPath = \ReactOS
|
DefaultPath = \ReactOS
|
||||||
SetupDebugOptions = "/DEBUG /KDSERIAL /DEBUGPORT=COM1 /FIRSTCHANCE"
|
;SetupDebugOptions = "/DEBUG /KDSERIAL /DEBUGPORT=COM1 /FIRSTCHANCE"
|
||||||
|
SetupDebugOptions = "/DEBUG /DEBUGPORT=VBOX /FIRSTCHANCE"
|
||||||
;SetupDebugOptions = "/DEBUG /SOS /DEBUGPORT=SCREEN"
|
;SetupDebugOptions = "/DEBUG /SOS /DEBUGPORT=SCREEN"
|
||||||
OsLoadOptions = "/FASTDETECT /NOGUIBOOT /NODEBUG"
|
OsLoadOptions = "/FASTDETECT /NOGUIBOOT /NODEBUG"
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
[Welcome]
|
[Welcome]
|
||||||
DisplayCheckBox = 0
|
DisplayCheckBox = 0
|
||||||
DisplayExitButton = 1
|
DisplayExitButton = 1
|
||||||
|
|
|
@ -36,8 +36,8 @@ if(ARCH STREQUAL "i386" OR ARCH STREQUAL "amd64")
|
||||||
add_cd_file(TARGET fat DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/fat.bin FOR bootcd regtest)
|
add_cd_file(TARGET fat DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/fat.bin FOR bootcd regtest)
|
||||||
add_cd_file(TARGET fat32 DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/fat32.bin FOR bootcd regtest)
|
add_cd_file(TARGET fat32 DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/fat32.bin FOR bootcd regtest)
|
||||||
add_cd_file(TARGET ntfsvbr DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/ntfs.bin FOR bootcd regtest)
|
add_cd_file(TARGET ntfsvbr DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/ntfs.bin FOR bootcd regtest)
|
||||||
add_cd_file(TARGET isoboot DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FILE ${CMAKE_CURRENT_BINARY_DIR}/isoboot.bin FOR all hybridcd)
|
add_cd_file(TARGET isoboot DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/isoboot.bin FOR bootcd regtest)
|
||||||
add_cd_file(TARGET isobtrt DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FILE ${CMAKE_CURRENT_BINARY_DIR}/isobtrt.bin FOR bootcd regtest)
|
add_cd_file(TARGET isobtrt DESTINATION loader NO_CAB FILE ${CMAKE_CURRENT_BINARY_DIR}/isobtrt.bin FOR bootcd regtest)
|
||||||
elseif(ARCH STREQUAL "arm")
|
elseif(ARCH STREQUAL "arm")
|
||||||
add_custom_target(fat
|
add_custom_target(fat
|
||||||
COMMAND exit 1
|
COMMAND exit 1
|
||||||
|
|
|
@ -3,4 +3,4 @@ add_executable(fdebug fdebug.c rs232.c fdebug.rc)
|
||||||
add_dependencies(fdebug psdk)
|
add_dependencies(fdebug psdk)
|
||||||
set_module_type(fdebug win32gui UNICODE)
|
set_module_type(fdebug win32gui UNICODE)
|
||||||
add_importlibs(fdebug comdlg32 user32 gdi32 msvcrt kernel32)
|
add_importlibs(fdebug comdlg32 user32 gdi32 msvcrt kernel32)
|
||||||
add_cd_file(TARGET fdebug DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FOR bootcd livecd hybridcd)
|
add_cd_file(TARGET fdebug DESTINATION loader NO_CAB FOR bootcd)
|
||||||
|
|
|
@ -253,4 +253,4 @@ else()
|
||||||
add_custom_target(freeldr ALL DEPENDS freeldr_pe)
|
add_custom_target(freeldr ALL DEPENDS freeldr_pe)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_cd_file(TARGET freeldr FILE ${CMAKE_CURRENT_BINARY_DIR}/freeldr.sys DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FOR bootcd livecd hybridcd regtest)
|
add_cd_file(TARGET freeldr FILE ${CMAKE_CURRENT_BINARY_DIR}/freeldr.sys DESTINATION loader NO_CAB FOR bootcd regtest)
|
||||||
|
|
|
@ -21,4 +21,4 @@ add_executable(installfreeldr EXCLUDE_FROM_ALL
|
||||||
|
|
||||||
set_module_type(installfreeldr win32cui)
|
set_module_type(installfreeldr win32cui)
|
||||||
add_importlibs(installfreeldr msvcrt kernel32)
|
add_importlibs(installfreeldr msvcrt kernel32)
|
||||||
add_cd_file(TARGET installfreeldr DESTINATION loader NO_CAB NOT_IN_HYBRIDCD FOR bootcd livecd hybridcd)
|
add_cd_file(TARGET installfreeldr DESTINATION loader NO_CAB FOR bootcd)
|
||||||
|
|
|
@ -19,8 +19,8 @@ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/AHK_Tests/)
|
||||||
add_subdirectory(AHK_Tests)
|
add_subdirectory(AHK_Tests)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
## Extra files for Boot/Live/Hybrid CD. You need to put them under [boot|live|hybrid]cd_extras
|
## Extra files for the Boot/Live CD. You need to put them under "[boot|live]cd_extras"
|
||||||
## in the same layout as you want them to be in the CD.
|
## using the same layout as you want them to be in the CD.
|
||||||
## If you change the content of any of the following folders later on,
|
## If you change the content of any of the following folders later on,
|
||||||
## run "cmake ." before compiling.
|
## run "cmake ." before compiling.
|
||||||
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/bootcd_extras/)
|
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/bootcd_extras/)
|
||||||
|
@ -35,12 +35,6 @@ if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/livecd_extras/)
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/livecd_extras/${item} DESTINATION extras NO_CAB NAME_ON_CD ${item} FOR livecd)
|
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/livecd_extras/${item} DESTINATION extras NO_CAB NAME_ON_CD ${item} FOR livecd)
|
||||||
endforeach(item)
|
endforeach(item)
|
||||||
endif()
|
endif()
|
||||||
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/hybridcd_extras/)
|
|
||||||
file(GLOB_RECURSE EXTRA_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/hybridcd_extras/ ${CMAKE_CURRENT_SOURCE_DIR}/hybridcd_extras/*)
|
|
||||||
foreach(item ${EXTRA_FILES})
|
|
||||||
add_cd_file(FILE ${CMAKE_CURRENT_SOURCE_DIR}/hybridcd_extras/${item} DESTINATION extras NO_CAB NAME_ON_CD ${item} FOR hybridcd)
|
|
||||||
endforeach(item)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
## Extra files which you need existing on the hard drive after the installation.
|
## Extra files which you need existing on the hard drive after the installation.
|
||||||
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/)
|
if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/)
|
||||||
|
|
|
@ -253,7 +253,7 @@ macro(dir_to_num dir var)
|
||||||
endmacro()
|
endmacro()
|
||||||
|
|
||||||
function(add_cd_file)
|
function(add_cd_file)
|
||||||
cmake_parse_arguments(_CD "NO_CAB;NOT_IN_HYBRIDCD" "DESTINATION;NAME_ON_CD;TARGET" "FILE;FOR" ${ARGN})
|
cmake_parse_arguments(_CD "NO_CAB" "DESTINATION;NAME_ON_CD;TARGET" "FILE;FOR" ${ARGN})
|
||||||
if(NOT (_CD_TARGET OR _CD_FILE))
|
if(NOT (_CD_TARGET OR _CD_FILE))
|
||||||
message(FATAL_ERROR "You must provide a target or a file to install!")
|
message(FATAL_ERROR "You must provide a target or a file to install!")
|
||||||
endif()
|
endif()
|
||||||
|
@ -288,7 +288,9 @@ function(add_cd_file)
|
||||||
if(NOT __cd EQUAL -1)
|
if(NOT __cd EQUAL -1)
|
||||||
# whether or not we should put it in reactos.cab or directly on cd
|
# whether or not we should put it in reactos.cab or directly on cd
|
||||||
if(_CD_NO_CAB)
|
if(_CD_NO_CAB)
|
||||||
# directly on cd
|
# directly on cd - replace the "reactos/" directory name to the current build architecture name
|
||||||
|
# WARNING: CMake REGEXes are always case-sensitive!
|
||||||
|
string(REGEX REPLACE "^reactos([\\\\/]+|$)" "${ARCH}\\1" _CD_ARCH_DESTINATION "${_CD_DESTINATION}")
|
||||||
foreach(item ${_CD_FILE})
|
foreach(item ${_CD_FILE})
|
||||||
if(_CD_NAME_ON_CD)
|
if(_CD_NAME_ON_CD)
|
||||||
# rename it in the cd tree
|
# rename it in the cd tree
|
||||||
|
@ -296,11 +298,7 @@ function(add_cd_file)
|
||||||
else()
|
else()
|
||||||
get_filename_component(__file ${item} NAME)
|
get_filename_component(__file ${item} NAME)
|
||||||
endif()
|
endif()
|
||||||
set_property(GLOBAL APPEND PROPERTY BOOTCD_FILE_LIST "${_CD_DESTINATION}/${__file}=${item}")
|
set_property(GLOBAL APPEND PROPERTY BOOTCD_FILE_LIST "${_CD_ARCH_DESTINATION}/${__file}=${item}")
|
||||||
# add it also into the hybridcd if not specified otherwise
|
|
||||||
if(NOT _CD_NOT_IN_HYBRIDCD)
|
|
||||||
set_property(GLOBAL APPEND PROPERTY HYBRIDCD_FILE_LIST "bootcd/${_CD_DESTINATION}/${__file}=${item}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
endforeach()
|
||||||
# manage dependency
|
# manage dependency
|
||||||
if(_CD_TARGET)
|
if(_CD_TARGET)
|
||||||
|
@ -338,31 +336,9 @@ function(add_cd_file)
|
||||||
get_filename_component(__file ${item} NAME)
|
get_filename_component(__file ${item} NAME)
|
||||||
endif()
|
endif()
|
||||||
set_property(GLOBAL APPEND PROPERTY LIVECD_FILE_LIST "${_CD_DESTINATION}/${__file}=${item}")
|
set_property(GLOBAL APPEND PROPERTY LIVECD_FILE_LIST "${_CD_DESTINATION}/${__file}=${item}")
|
||||||
# add it also into the hybridcd if not specified otherwise
|
|
||||||
if(NOT _CD_NOT_IN_HYBRIDCD)
|
|
||||||
set_property(GLOBAL APPEND PROPERTY HYBRIDCD_FILE_LIST "livecd/${_CD_DESTINATION}/${__file}=${item}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
endforeach()
|
||||||
endif() #end livecd
|
endif() #end livecd
|
||||||
|
|
||||||
# do we need also to add it to hybridcd?
|
|
||||||
list(FIND _CD_FOR hybridcd __cd)
|
|
||||||
if(NOT __cd EQUAL -1)
|
|
||||||
# manage dependency
|
|
||||||
if(_CD_TARGET)
|
|
||||||
add_dependencies(hybridcd ${_CD_TARGET})
|
|
||||||
endif()
|
|
||||||
foreach(item ${_CD_FILE})
|
|
||||||
if(_CD_NAME_ON_CD)
|
|
||||||
# rename it in the cd tree
|
|
||||||
set(__file ${_CD_NAME_ON_CD})
|
|
||||||
else()
|
|
||||||
get_filename_component(__file ${item} NAME)
|
|
||||||
endif()
|
|
||||||
set_property(GLOBAL APPEND PROPERTY HYBRIDCD_FILE_LIST "${_CD_DESTINATION}/${__file}=${item}")
|
|
||||||
endforeach()
|
|
||||||
endif() #end hybridcd
|
|
||||||
|
|
||||||
# do we add it to regtest?
|
# do we add it to regtest?
|
||||||
list(FIND _CD_FOR regtest __cd)
|
list(FIND _CD_FOR regtest __cd)
|
||||||
if(NOT __cd EQUAL -1)
|
if(NOT __cd EQUAL -1)
|
||||||
|
@ -395,15 +371,16 @@ function(add_cd_file)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(create_iso_lists)
|
function(create_iso_lists)
|
||||||
# generate reactos.cab before anything else
|
# Generate reactos.cab before anything else
|
||||||
get_property(_filelist GLOBAL PROPERTY REACTOS_CAB_DEPENDS)
|
get_property(_filelist GLOBAL PROPERTY REACTOS_CAB_DEPENDS)
|
||||||
|
|
||||||
# begin with reactos.inf. We want this command to be always executed, so we pretend it generates another file although it will never do.
|
# Begin with reactos.inf. We want this command to be always executed, so we pretend it generates another file although it will never do.
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf ${CMAKE_CURRENT_BINARY_DIR}/__some_non_existent_file
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf ${CMAKE_CURRENT_BINARY_DIR}/__some_non_existent_file
|
||||||
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.inf ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf
|
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.inf ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf
|
||||||
DEPENDS ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.inf reactos_cab_inf)
|
DEPENDS ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.inf reactos_cab_inf)
|
||||||
|
|
||||||
|
# Now build reactos.cab itself
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab
|
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab
|
||||||
COMMAND native-cabman -C ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.dff -RC ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf -N -P ${REACTOS_SOURCE_DIR}
|
COMMAND native-cabman -C ${REACTOS_BINARY_DIR}/boot/bootdata/packages/reactos.dff -RC ${CMAKE_CURRENT_BINARY_DIR}/reactos.inf -N -P ${REACTOS_SOURCE_DIR}
|
||||||
|
@ -412,25 +389,21 @@ function(create_iso_lists)
|
||||||
add_custom_target(reactos_cab DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab)
|
add_custom_target(reactos_cab DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab)
|
||||||
add_dependencies(reactos_cab reactos_cab_inf)
|
add_dependencies(reactos_cab reactos_cab_inf)
|
||||||
|
|
||||||
|
# Add reactos.cab into the BootCD
|
||||||
add_cd_file(
|
add_cd_file(
|
||||||
TARGET reactos_cab
|
TARGET reactos_cab
|
||||||
FILE ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab
|
FILE ${CMAKE_CURRENT_BINARY_DIR}/reactos.cab
|
||||||
DESTINATION reactos
|
DESTINATION reactos
|
||||||
NO_CAB FOR bootcd regtest)
|
NO_CAB FOR bootcd regtest)
|
||||||
|
|
||||||
|
# Add the LiveImage into the BootCD
|
||||||
add_cd_file(
|
add_cd_file(
|
||||||
FILE ${CMAKE_CURRENT_BINARY_DIR}/livecd.iso
|
TARGET livecd
|
||||||
DESTINATION livecd
|
FILE ${CMAKE_CURRENT_BINARY_DIR}/liveimg.iso
|
||||||
FOR hybridcd)
|
DESTINATION root
|
||||||
|
NO_CAB FOR bootcd)
|
||||||
get_property(_filelist GLOBAL PROPERTY BOOTCD_FILE_LIST)
|
|
||||||
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
|
||||||
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst "${_filelist}")
|
|
||||||
unset(_filelist)
|
|
||||||
file(GENERATE
|
|
||||||
OUTPUT ${REACTOS_BINARY_DIR}/boot/bootcd.$<CONFIG>.lst
|
|
||||||
INPUT ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst)
|
|
||||||
|
|
||||||
|
# Write the LiveImage file list
|
||||||
get_property(_filelist GLOBAL PROPERTY LIVECD_FILE_LIST)
|
get_property(_filelist GLOBAL PROPERTY LIVECD_FILE_LIST)
|
||||||
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
||||||
file(APPEND ${REACTOS_BINARY_DIR}/boot/livecd.cmake.lst "${_filelist}")
|
file(APPEND ${REACTOS_BINARY_DIR}/boot/livecd.cmake.lst "${_filelist}")
|
||||||
|
@ -439,14 +412,21 @@ function(create_iso_lists)
|
||||||
OUTPUT ${REACTOS_BINARY_DIR}/boot/livecd.$<CONFIG>.lst
|
OUTPUT ${REACTOS_BINARY_DIR}/boot/livecd.$<CONFIG>.lst
|
||||||
INPUT ${REACTOS_BINARY_DIR}/boot/livecd.cmake.lst)
|
INPUT ${REACTOS_BINARY_DIR}/boot/livecd.cmake.lst)
|
||||||
|
|
||||||
get_property(_filelist GLOBAL PROPERTY HYBRIDCD_FILE_LIST)
|
# Write the BootCD file list
|
||||||
|
get_property(_filelist GLOBAL PROPERTY BOOTCD_FILE_LIST)
|
||||||
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
||||||
file(APPEND ${REACTOS_BINARY_DIR}/boot/hybridcd.cmake.lst "${_filelist}")
|
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst "${_filelist}")
|
||||||
|
unset(_filelist)
|
||||||
|
# Also, append the file contents list of the LiveImage to the BootCD file list
|
||||||
|
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst "\n")
|
||||||
|
file(READ ${REACTOS_BINARY_DIR}/boot/livecd.cmake.lst _filelist)
|
||||||
|
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst "${_filelist}")
|
||||||
unset(_filelist)
|
unset(_filelist)
|
||||||
file(GENERATE
|
file(GENERATE
|
||||||
OUTPUT ${REACTOS_BINARY_DIR}/boot/hybridcd.$<CONFIG>.lst
|
OUTPUT ${REACTOS_BINARY_DIR}/boot/bootcd.$<CONFIG>.lst
|
||||||
INPUT ${REACTOS_BINARY_DIR}/boot/hybridcd.cmake.lst)
|
INPUT ${REACTOS_BINARY_DIR}/boot/bootcd.cmake.lst)
|
||||||
|
|
||||||
|
# Write the BootCDRegTest file list
|
||||||
get_property(_filelist GLOBAL PROPERTY BOOTCDREGTEST_FILE_LIST)
|
get_property(_filelist GLOBAL PROPERTY BOOTCDREGTEST_FILE_LIST)
|
||||||
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
string(REPLACE ";" "\n" _filelist "${_filelist}")
|
||||||
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcdregtest.cmake.lst "${_filelist}")
|
file(APPEND ${REACTOS_BINARY_DIR}/boot/bootcdregtest.cmake.lst "${_filelist}")
|
||||||
|
@ -847,7 +827,7 @@ function(create_registry_hives)
|
||||||
TARGET bcd_hive
|
TARGET bcd_hive
|
||||||
DESTINATION efi/boot
|
DESTINATION efi/boot
|
||||||
NO_CAB
|
NO_CAB
|
||||||
FOR bootcd regtest livecd)
|
FOR bootcd regtest)
|
||||||
|
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue