First, src/include/cpu/cpufixup.h is changed to follow the common linuxbios usage.
#if CPU_FIXUP == 1 # if (k8==1) #warning "====>Temporary notice that we are using k8 cpufixup" # define cpufixup(mem) k8_cpufixup(mem) # elif (k7==1) #warning "====>Temporary notice that we are using k7 cpufixup" # define cpufixup(mem) k7_cpufixup(mem) # elif (i786==1) #warning "====>Temporary notice that we are using i786 cpufixup" # define cpufixup(mem) i786_cpufixup(mem) # elif (i686==1) #warning "====>Temporary notice that we are using i686 cpufixup" # define cpufixup(mem) p6_cpufixup(mem) # endif #else #warning "====>YOU DID NOT DEFINE ONE OF: k8, k7, i786, i686" # define cpufixup(mem) do {} while(0) #endif
note that it is compare to 1, not just an #ifdef. We are leaving the warning in for a while to make sure people see this. In the EPIA, the symbol k8 even if defined to 1 would end up needing k8_cpufixup, which is wrong.
Just a reminder, make your stuff testing against ==1, not ifdef.
Second, a subtle change in the config tool.
IF: a symbol is always exported and has no default value, AND the value is not set by the time the config tool is generating makefile settings, then you will get an error, not just a warning.
One error in the EPIA build process was because the symbol 'k8' was defined but had no value.
I don't think this will break anything, but you never know. Watch your K8 builds carefully. We're hoping this fixes the latest EPIA problems.
ron