{ "defaults": { "type": ["CC", "defaults"] , "arguments_config": ["TOOLCHAIN_CONFIG", "CURL_ENABLE_SSL", "ARCH", "TARGET_ARCH"] , "base": [["@", "base", "CC", "defaults"]] , "ADD_CFLAGS": { "type": "let*" , "bindings": [ [ "COMPILER_FAMILY" , { "type": "lookup" , "map": { "type": "var" , "name": "TOOLCHAIN_CONFIG" , "default": {"type": "empty_map"} } , "key": "FAMILY" , "default": "unknown" } ] , [ "CURL_ENABLE_SSL" , {"type": "var", "name": "CURL_ENABLE_SSL", "default": true} ] , [ "TARGET_ARCH" , { "type": "var" , "name": "TARGET_ARCH" , "default": { "type": "var" , "name": "ARCH" , "default": {"type": "fail", "msg": "Required variable 'ARCH' is not set."} } } ] ] , "body": { "type": "++" , "$1": [ { "type": "case*" , "expr": {"type": "var", "name": "COMPILER_FAMILY"} , "case": [ [ "msvc" , [ "-D_CRT_SECURE_NO_DEPRECATE" , "-D_CRT_NONSTDC_NO_DEPRECATE" , "/W4" , "/MP" ] ] ] } , ["-DHAVE_CONFIG_H", "-DBUILDING_LIBCURL"] , { "type": "if" , "cond": { "type": "==" , "$1": {"type": "var", "name": "COMPILER_FAMILY"} , "$2": "msvc" } , "then": [] , "else": { "type": "if" , "cond": {"type": "var", "name": "CURL_HIDDEN_SYMBOLS"} , "then": { "type": "case*" , "expr": {"type": "var", "name": "COMPILER_FAMILY"} , "case": [ ["clang", ["-DCURL_HIDDEN_SYMBOLS"]] , ["gnu", ["-DCURL_HIDDEN_SYMBOLS"]] , ["sunpro", ["-DCURL_HIDDEN_SYMBOLS"]] , ["intel", ["-DCURL_HIDDEN_SYMBOLS"]] ] } } } , { "type": "case" , "expr": {"type": "var", "name": "TARGET_ARCH"} , "case": {"arm": ["-Wno-atomic-alignment"]} } ] } } } }