CMakePresets.json

358 阅读1分钟
{
    "version": 2,
    "configurePresets": [
        {
            "name": "default",
            "displayName": "GCC 4.8.5 x86_64-redhat-linux",
            "description": "使用编译器: C = /usr/bin/gcc, CXX = /usr/bin/g++",
            "binaryDir": "${sourceDir}/out/build/${presetName}",
            "generator": "Unix Makefiles",
            "cacheVariables": {
                "CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}",
                "CMAKE_C_COMPILER": "/usr/bin/gcc",
                "CMAKE_CXX_COMPILER": "/usr/bin/g++",
                "CMAKE_BUILD_TYPE": "Debug",
                "ENABLE_SSL": "OFF"
            },
            "environment": {
                "MY_ENV_VAR": "Test",
                "PATH": "$env{PATH}:$env{MY_ENV_VAR}/bin",
                "LD_LIBRARY_PATH": "$env{LD_LIBRARY_PATH}:$env{MY_ENV_VAR}/lib
            },
        }
    ],
    "buildPresets": [
        {
            "name": "default",
            "description": "",
            "displayName": "",
            "configurePreset": "default",
            "jobs": 1
        }
    ]
}
{
  "version": 3,
  "configurePresets": [
    {
      "name": "base",
      "description": "For more information: http://aka.ms/cmakepresetsvs",
      "hidden": true,
      "generator": "Ninja",
      "binaryDir": "${sourceDir}/out/build/${presetName}",
      "installDir": "${sourceDir}/out/install/${presetName}",
      "toolchainFile": "$env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake",
      "environment": {
        "VCPKG_FEATURE_FLAGS": "manifests,versions,binarycaching,registries"
      },
      "condition": {
        "type": "equals",
        "lhs": "${hostSystemName}",
        "rhs": "Windows"
      }
    },
    {
      "name": "x64-debug",
      "displayName": "x64 Debug",
      "description": "Sets debug build type and x64 arch",
      "inherits": "base",
      "architecture": {
        "value": "x64",
        "strategy": "external"
      },
      "cacheVariables": {
        "CMAKE_BUILD_TYPE": "Debug"
      }
    },
    {
      "name": "x64-release",
      "displayName": "x64 Release",
      "description": "Sets release build type",
      "inherits": "x64-debug",
      "cacheVariables": {
        "CMAKE_BUILD_TYPE": "Release"
      }
    },
    {
      "name": "x86-debug",
      "displayName": "x86 Debug ",
      "description": "Sets debug build type and x86 arch",
      "inherits": "base",
      "architecture": {
        "value": "x86",
        "strategy": "external"
      },
      "cacheVariables": {
        "CMAKE_BUILD_TYPE": "Debug"
      }
    },
    {
      "name": "x86-release",
      "displayName": "x86 Release",
      "description": "Sets release build type",
      "inherits": "x86-debug",
      "cacheVariables": {
        "CMAKE_BUILD_TYPE": "Release"
      }
    },
    {
      "name": "linux-debug",
      "displayName": "Linux Debug",
      "description": "Sets GCC",
      "inherits": "base",
      "cacheVariables": {
        "CMAKE_C_COMPILER": "gcc",
        "CMAKE_CXX_COMPILER": "g++",
        "CMAKE_BUILD_TYPE": "Debug"
      },
      "condition": {
        "type": "equals",
        "lhs": "${hostSystemName}",
        "rhs": "Linux"
      },
      "vendor": {
        "microsoft.com/VisualStudioRemoteSettings/CMake/1.0": {
          "sourceDir": "$env{HOME}/.vs/$ms{projectDirName}",
          "copyAdditionalIncludeDirectoriesList": [ "$env{HOME}/.vs/box2d-lite-actions/out/build/linux-debug/vcpkg_installed/x64-linux/include" ]
        }
      }
    },
    {
      "name": "linux-release",
      "displayName": "Linux Release",
      "description": "Sets release build type",
      "inherits": "linux-debug",
      "cacheVariables": {
        "CMAKE_BUILD_TYPE": "Release"
      }
    }
  ],
  "buildPresets": [
    {
      "name": "default-build-linux",
      "displayName": "Default",
      "configurePreset": "linux-debug",
      "description": "Vanilla build"
    },
    {
      "name": "default-build-windows",
      "displayName": "Default",
      "configurePreset": "x64-debug",
      "description": "Vanilla build"
    },
    {
      "name": "verbose-build-linux",
      "displayName": "Verbose Build",
      "description": "Passes -v to Ninja",
      "configurePreset": "linux-debug",
      "nativeToolOptions": [ "-v" ]
    },
    {
      "name": "verbose-build-windows",
      "displayName": "Verbose Build",
      "configurePreset": "x64-debug",
      "inherits": "verbose-build-linux"
    }
  ],
  "testPresets": [
    {
      "name": "core-test-linux",
      "description": "Enable output on failure",
      "configurePreset": "linux-debug",
      "output": {
        "outputOnFailure": true
      }
    },
    {
      "name": "core-test-windows",
      "inherits": "core-test-linux",
      "configurePreset": "x64-debug"
    }
  ]
}