F: all source file should be put in lib dir, to support coverage