{
    "linux_ia32": {
        "system": "Linux",
        "processor": "i386",
        "triplet": "i686-linux-gnu",
        "sysroot": "../../tools/cross/sysroots/debian_i386"
    },
    "linux_x64": {
        "system": "Linux",
        "processor": "x86_64",
        "triplet": "x86_64-linux-gnu",
        "sysroot": "../../tools/cross/sysroots/debian_x64"
    },
    "linux_armhf": {
        "system": "Linux",
        "processor": "arm",
        "triplet": "arm-linux-gnueabihf",
        "sysroot": "../../tools/cross/sysroots/debian_arm32"
    },
    "linux_arm64": {
        "system": "Linux",
        "processor": "aarch64",
        "triplet": "aarch64-linux-gnu",
        "sysroot": "../../tools/cross/sysroots/debian_arm64"
    },
    "linux_riscv64d": {
        "system": "Linux",
        "processor": "riscv64",
        "triplet": "riscv64-linux-gnu",
        "sysroot": "../../tools/cross/sysroots/debian_riscv64"
    },
    "linux_loong64": {
        "system": "Linux",
        "processor": "loongarch64",
        "triplet": "loongarch64-linux-gnu",
        "sysroot": "../../tools/cross/sysroots/debian_loong64"
    },

    "win32_ia32": {
        "system": "Windows",
        "processor": "X86",
        "lib": "win-x86",
        "flags": ["-DNODE_JS_LINK_FLAGS=/DELAYLOAD:node.exe;/SAFESEH:NO", "-A", "Win32"],

        "triplet": "i386-pc-windows-msvc",
        "linux": {
            "sysroot": "../../tools/cross/sysroots/windows_i386",
            "flags": ["-DNODE_JS_LINK_FLAGS=-Wl,/DELAYLOAD:node.exe,/SAFESEH:NO", "-DNODE_JS_DLLTOOL_MACHINE=i386"],
            "variables": {
                "CMAKE_DLLTOOL": "llvm-dlltool",
                "CMAKE_RC_COMPILER": "llvm-rc",
                "CMAKE_C_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_CXX_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_EXE_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp",
                "CMAKE_STATIC_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp",
                "CMAKE_SHARED_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp"
            }
        }
    },
    "win32_x64": {
        "system": "Windows",
        "processor": "AMD64",
        "lib": "win-x64",
        "flags": ["-DNODE_JS_LINK_FLAGS=/DELAYLOAD:node.exe"],

        "triplet": "x86_64-pc-windows-msvc",
        "linux": {
            "sysroot": "../../tools/cross/sysroots/windows_x64",
            "flags": ["-DNODE_JS_LINK_FLAGS=-Wl,/DELAYLOAD:node.exe", "-DNODE_JS_DLLTOOL_MACHINE=i386:x86-64"],
            "variables": {
                "CMAKE_DLLTOOL": "llvm-dlltool",
                "CMAKE_RC_COMPILER": "llvm-rc",
                "CMAKE_C_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_CXX_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_EXE_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp",
                "CMAKE_STATIC_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp",
                "CMAKE_SHARED_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/x86_64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/x86_64 -ldelayimp"
            }
        }
    },
    "win32_arm64": {
        "system": "Windows",
        "processor": "ARM64",
        "lib": "win-arm64",
        "flags": ["-DNODE_JS_LINK_FLAGS=/DELAYLOAD:node.exe;/SAFESEH:NO", "-A", "ARM64"],

        "triplet": "aarch64-pc-windows-msvc",
        "linux": {
            "sysroot": "../../tools/cross/sysroots/windows_arm64",
            "flags": ["-DNODE_JS_LINK_FLAGS=-Wl,/DELAYLOAD:node.exe,/SAFESEH:NO", "-DNODE_JS_DLLTOOL_MACHINE=arm64"],
            "variables": {
                "CMAKE_DLLTOOL": "llvm-dlltool",
                "CMAKE_RC_COMPILER": "llvm-rc",
                "CMAKE_C_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_CXX_FLAGS": "-Xmicrosoft-windows-sys-root {{ sysroot }}",
                "CMAKE_EXE_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/aarch64 -ldelayimp",
                "CMAKE_STATIC_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/aarch64 -ldelayimp",
                "CMAKE_SHARED_LINKER_FLAGS": "-Wl,-libpath:{{ sysroot }}/VC/Tools/MSVC/Current/lib/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/ucrt/aarch64,-libpath:{{ sysroot }}/Kits/10/Lib/Current/um/aarch64 -ldelayimp"
            }
        }
    },

    "darwin_x64": {
        "system": "Darwin",
        "processor": "x86_64",
        "flags": ["-DNODE_JS_LINK_FLAGS=-undefined;dynamic_lookup", "-DCMAKE_OSX_ARCHITECTURES=x86_64"]
    },
    "darwin_arm64": {
        "system": "Darwin",
        "processor": "arm64",
        "flags": ["-DNODE_JS_LINK_FLAGS=-undefined;dynamic_lookup", "-DCMAKE_OSX_ARCHITECTURES=arm64"]
    },

    "freebsd_x64": {
        "system": "FreeBSD",
        "processor": "amd64",
        "triplet": "x86_64-unknown-freebsd",
        "sysroot": "../../tools/cross/sysroots/freebsd_x64"
    },
    "freebsd_arm64": {
        "system": "FreeBSD",
        "processor": "arm64",
        "triplet": "aarch64-unknown-freebsd",
        "sysroot": "../../tools/cross/sysroots/freebsd_arm64"
    }
}
