include_prefix = vars->include_prefix||combine_path(prefix,"include","pike"); should not change if include_prefix is not specified.
Yes, but with your change to Makefile.in, include_prefix _would_ be specified. Thus, the value will change, since the value specified will differ from combine_path(prefix,"include","pike") by default.