Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add /waitfordebugger argument to MGCB. #8227

Open
wants to merge 5 commits into
base: develop
Choose a base branch
from

Commits on Mar 12, 2024

  1. Add /waitfordebugger argument to MGCB.

    The call to `System.Diagnostics.Debugger.Launch` is
    not supported on Unix based platforms. This makes
    debugging `MGCB.exe` and Content Pipeline extensions
    difficult.
    
    So lets add a new argument which will make `MGCB.exe`
    wait for a debugger to attach. Also add a extra
    update to the `launch.json` to demonstrate how to
    attach the `dotnet` debugger to an existing process.
    
    This new system will also work on Windows.
    
    To use this in VSCode you can add the following to the
    `launch.json`
    
    ```json
    {
        // Use IntelliSense to learn about possible attributes.
        // Hover to view descriptions of existing attributes.
        // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
        "version": "0.2.0",
        "configurations": [
            {
                "name": "Attach to Process",
                "type": "coreclr",
                "request": "attach",
                "processId": "${input.processid}",
            }
        ],
        "inputs": [
            {
                "id": "processid",
                "type": "promptString",
                "default": "0",
                "description": "Enter Process Id of process to attach to."
            }
        ]
    }
    ```
    
    you can then add the following to your `csproj`.
    
    ```
    <MonoGameMGCBAdditionalArguments>/waitfordebugger</MonoGameMGCBAdditionalArguments>
    ```
    
    This will cause the `MGCB.exe` to print the ProcessId
    to the console during the build and wait for the debugger
    to attach. Once you have the ProcessId you can run the
    VSCode `Attach to Process` and enter the ProcessId when prompted.
    The debugger should then attach.
    
    If you want to prcess without attaching the debugger just hit any
    key in the console or terminal windows where `MGCB.exe` is running.
    dellis1972 committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    fcd046d View commit details
    Browse the repository at this point in the history
  2. Fix build error

    dellis1972 committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    cc3fb8d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    62d080a View commit details
    Browse the repository at this point in the history
  4. Fix some issues

    dellis1972 committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    a7815cc View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2024

  1. Fix duplicae flag

    dellis1972 committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    4b9174d View commit details
    Browse the repository at this point in the history