Reason for warning "avr:build doesn't define a 'build.board' preference" when build.board is explicitly set in boards.txt?
It appears that you can no longer set a global property in the boards.txt file. You must set every property individually inside each board ID, even if they are the same for every board in the file. This seems to contradict the documentation that states that...


  The other properties will override the corresponding global properties
  of the IDE when the user selects the board.


Further, if any global key is set directly, then both the board specific keys  and the global keys are ignored.

So in my above boards.txt, setting the the global key build.f_cpu at the end of the file seems to cover the blink.build.board key and prevent it from being copied to build.board when the board is selected. Even if you set the global key build.board directly, this setting is ignored.