Took out --with-raid from the spec file... Still no go. Can't put a finger on what it's failing on now quite as easily:
sql_table.o(.text+0x4d28): undefined reference to `operator new[](unsigned)'
sql_table.o(.text+0x5152): undefined reference to `operator delete[](void*)'
../libmysqld.a(sql_update.o): In function `multi_update:

repare(List<Item>&)':
sql_update.o(.text+0x1430): undefined reference to `operator new[](unsigned)'
../libmysqld.a(sql_update.o): In function `multi_update::~multi_update [not-in-charge]()':
sql_update.o(.text+0x18f0): undefined reference to `operator delete[](void*)'
sql_update.o(.text+0x1993): undefined reference to `operator delete[](void*)'
../libmysqld.a(sql_update.o): In function `multi_update::~multi_update [in-charge]()':
sql_update.o(.text+0x1a80): undefined reference to `operator delete[](void*)'
sql_update.o(.text+0x1b23): undefined reference to `operator delete[](void*)'
../libmysqld.a(sql_update.o): In function `multi_update::~multi_update [in-charge deleting]()':
sql_update.o(.text+0x1c10): undefined reference to `operator delete[](void*)'
../libmysqld.a(sql_update.o)(.text+0x1cb3): more undefined references to `operator delete[](void*)' follow
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV9Item_cond+0x34): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV8cmp_item+0x10): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV8cmp_item+0x14): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV9in_vector+0x10): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV9in_vector+0x14): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_cmpfunc.o)(.gnu.linkonce.d._ZTV15Item_bool_func2+0x34): more undefined references to `__cxa_pure_virtual' follow
../libmysqld.a(item_sum.o): In function `Item_sum_count_distinct::~Item_sum_count_distinct [not-in-charge]()':
item_sum.o(.text+0x1d33): undefined reference to `operator delete[](void*)'
../libmysqld.a(item_sum.o): In function `Item_sum_count_distinct::~Item_sum_count_distinct [in-charge]()':
item_sum.o(.text+0x1e23): undefined reference to `operator delete[](void*)'
../libmysqld.a(item_sum.o): In function `Item_sum_count_distinct::~Item_sum_count_distinct [in-charge deleting]()':
item_sum.o(.text+0x1f13): undefined reference to `operator delete[](void*)'
../libmysqld.a(item_sum.o): In function `Item_sum_count_distinct::setup(THD*)':
item_sum.o(.text+0x23b0): undefined reference to `operator delete[](void*)'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV12Item_sum_bit+0xa8): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV12Item_sum_bit+0xb0): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV15Item_sum_hybrid+0xa0): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV15Item_sum_hybrid+0xa8): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV12Item_sum_int+0xa0): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(item_sum.o)(.gnu.linkonce.d._ZTV12Item_sum_int+0xa4): more undefined references to `__cxa_pure_virtual' follow
../libmysqld.a(opt_ft.o): In function `get_ft_or_quick_select_for_ref(st_table*, st_join_table*)':
opt_ft.o(.text+0x46): undefined reference to `operator new(unsigned)'
../libmysqld.a(opt_ft.o): In function `FT_SELECT::~FT_SELECT [in-charge deleting]()':
opt_ft.o(.gnu.linkonce.t._ZN9FT_SELECTD0Ev+0x24): undefined reference to `operator delete(void*)'
../libmysqld.a(opt_range.o): In function `get_quick_select(st_qsel_param*, unsigned, SEL_ARG*)':
opt_range.o(.text+0x443d): undefined reference to `operator new(unsigned)'
../libmysqld.a(opt_range.o): In function `get_quick_select_for_ref(st_table*, st_table_ref*)':
opt_range.o(.text+0x4aee): undefined reference to `operator new(unsigned)'
../libmysqld.a(opt_range.o): In function `QUICK_SELECT::~QUICK_SELECT [in-charge deleting]()':
opt_range.o(.text+0x4b2): undefined reference to `operator delete(void*)'
../libmysqld.a(opt_range.o): In function `QUICK_SELECT_DESC::~QUICK_SELECT_DESC [in-charge deleting]()':
opt_range.o(.gnu.linkonce.t._ZN17QUICK_SELECT_DESCD0Ev+0x24): undefined reference to `operator delete(void*)'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Procedure+0x10): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Procedure+0x14): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Procedure+0x18): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Procedure+0x1c): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Item_proc+0x30): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(procedure.o)(.gnu.linkonce.d._ZTV9Item_proc+0x34): more undefined references to `__cxa_pure_virtual' follow
../libmysqld.a(procedure.o): In function `Procedure::~Procedure [in-charge deleting]()':
procedure.o(.gnu.linkonce.t._ZN9ProcedureD0Ev+0x26): undefined reference to `operator delete(void*)'
../libmysqld.a(sql_analyse.o): In function `proc_analyse_init(THD*, st_order*, select_result*, List<Item>&)':
sql_analyse.o(.text+0xbf): undefined reference to `operator new(unsigned)'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x10): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x14): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x18): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x1c): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x20): undefined reference to `__cxa_pure_virtual'
../libmysqld.a(sql_analyse.o)(.gnu.linkonce.d._ZTV10field_info+0x24): more undefined references to `__cxa_pure_virtual' follow
../libmysqld.a(sql_analyse.o): In function `analyse::~analyse [in-charge deleting]()':
sql_analyse.o(.gnu.linkonce.t._ZN7analyseD0Ev+0x62): undefined reference to `operator delete(void*)'
collect2: ld returned 1 exit status
make[3]: *** [mysqltest] Error 1
make[3]: Leaving directory `/usr/src/redhat/BUILD/mysql-4.0.12/libmysqld/examples'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/mysql-4.0.12/libmysqld'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/mysql-4.0.12'
make: *** [all] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.45930 (%build)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.45930 (%build)