c-syntactic-indentation is a variable defined in `cc-vars.el'.
Its value is

  • Automatically becomes buffer-local when set.
  • This variable is safe as a file local variable if its value
    satisfies the predicate `booleanp'.

*Whether the indentation should be controlled by the syntactic context.

If t, the indentation functions indent according to the syntactic
context, using the style settings specified by `c-offsets-alist'.

If nil, every line is just indented to the same level as the previous
one, and the M-x c-indent-command command adjusts the indentation in
steps specified by `c-basic-offset'. The indentation style has no
effect in this mode, nor any of the indentation associated variables,
e.g. `c-special-indent-hook'.

You can customize this variable.