The smp.h header file defines symbols used during the 'make of the kernel', if not defined the Makefile exit due to an error. To remedy the problem, either define the __SMP__ by passing it on the command line, or edit the smp.h file and delete the '#ifdef __SMP__' with its #endif.
*** Bug 19259 has been marked as a duplicate of this bug. ***
Can you name some of the symbols, this souns like the famous "make mrproper" bug. (dupe of 18912 in that case)
If it's what I had trouble with, the symbol "smp_num_cpus" is undefined when kernel_stat.h is being parsed. Removing the #define as suggested gets me further, but then it blows up on line 26 of smp.h when compiling i386_ksyms.c. I finally gave up and did "make mrproper" and life was good.
See also Bug #20677
You need to run 'make mrproper' first.