reactos/.theia/tasks.json
Hermès Bélusca-Maïto 81b3f0afdc
[REACTOS] Merge our bootcd and livecd into an all-in-one ReactOS BootCD
It contains the functionality of both the original bootcd (text-mode
1st-stage installer) and the livecd (that will include the 1st-stage
GUI installer later).
Our separate livecd ISOs become obsolete, and this completely removes
the need for the so-called "hybridcd" ISO.

Some details:

- The "hybridcd" build target is completely removed, since now the new
  BootCD *is* basically what we used to call "hybridcd".

- The "livecd" build target is kept so far (to minimize the code changes),
  but internally I start to refer to it as "LiveImage", and is reduced
  to a minimum.

  A minimal non-bootable "liveimg.iso" is built (but currently not
  included within the BootCD). Its purpose will be to implement the
  "ReactOS Live" functionality as a RAMDISK.
  (We currently don't support other file formats apart from ISO and
  flat disk for a RAMDISK).

  The "ReactOS Live" (non-RAMDISK) is implemented by adding to the
  BootCD file tree the files from the LiveImage.
  These files add two root directories, "Profiles" and "reactos"
  (which is the SystemRoot for the non-ramdisk LiveImage).

- The minimal text-mode ReactOS installation used for the 1st-stage
  installer, including USETUP itself, and the executable for the
  1st-stage GUI installer and the reactos.cab (installation source),
  are moved to the root directory called "i386" (ideally, one directory
  per architecture).

- The "bootcdregtest" target, i.e. the ISOs we feed our testbots with,
  are left untouched, i.e. they are only constituted of the 1st-stage
  text-mode installation, in the root directory named "reactos".

This commit is based upon an older SVN one:
svn path=/branches/setup_improvements/; revision=75273
2024-10-24 14:18:07 +02:00

55 lines
1.8 KiB
JSON

{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build bootcd",
"type": "shell",
"command": "ninja bootcd",
"options": {
"cwd": "${workspaceFolder}/build"
},
"group": "build",
"problemMatcher": [
{
"base": "$gcc",
"owner": "cpp",
"fileLocation": ["relative", "${workspaceFolder}/build"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
]
},
{
"label": "launch bootcd",
"type": "process",
"options": {
"cwd": "${workspaceFolder}/build"
},
"dependsOn": [
"build bootcd"
],
"dependsOrder": "sequence",
"command": "qemu-system-i386",
"args": [
"-cdrom", "bootcd.iso",
"-hda", "${env:HOME}/reactos_hdd.qcow",
"-boot", "d",
"-m", "1024",
"-chardev", "socket,port=9091,host=localhost,server,nowait,id=char0",
"-serial", "chardev:char0",
"-nic", "user,model=e1000",
"-chardev", "socket,path=/tmp/bootcd_dbg,server,nowait,id=char1", "-serial", "chardev:char1",
"-daemonize"
],
"problemMatcher": []
},
],
}