tidied up source_define parameters a bit