
# This file is automatically generated by the Dyninst testing system.
# For more information, see core/testsuite/src/specification/cmake_mutators.py

######################################################################
# A list of all the mutators to be compiled
######################################################################


include_directories ("..src/proccontrol")
set (proccontrol_MUTATORS pc_launch pc_thread_cont pc_breakpoint pc_library pc_addlibrary pc_singlestep pc_thread pc_groups pc_stat pc_irpc pc_detach pc_temp_detach pc_terminate pc_terminate_stopped pc_tls )

set (proccontrol_OBJS_ALL_MUTATORS pc_launch.o pc_thread_cont.o pc_breakpoint.o pc_library.o pc_addlibrary.o pc_singlestep.o pc_thread.o pc_groups.o pc_stat.o pc_irpc.o pc_detach.o pc_temp_detach.o pc_terminate.o pc_terminate_stopped.o pc_tls.o )


include_directories ("..src/dyninst")
set (dyninst_MUTATORS test1_1 test1_2 test1_3 test1_4 test1_5 test1_6 test1_7 test1_8 test1_9 test1_10 test1_11 test1_12 test1_13 test1_14 test1_15 test1_16 test1_17 test1_18 test1_19 test1_20 test1_21 test1_22 test_reloc snip_ref_shlib_var snip_change_shlib_var test_snip_remove init_fini_callback test1_23 test1_24 test1_25 test1_26 test1_27 test1_28 test1_29 test1_30 test1_31 test1_32 test1_33 test1_34 test1_36 test1_37 test1_38 test1_39 test1_40 test1_41 test_write_param test_pt_ls test2_1 test2_2 test2_3 test2_4 test2_5 test2_6 test2_7 test2_8 test2_11 test2_12 test2_13 test2_14 test3_1 test3_2 test3_3 test3_4 test3_5 test3_6 test3_7 test4_1 test4_2 test4_3 test4_4 test5_1 test5_2 test5_3 test5_4 test5_5 test5_6 test5_7 test5_8 test5_9 test_fork_5 test_fork_6 test_fork_7 test_fork_8 test_fork_9 test_fork_10 test_fork_11 test_fork_12 test_fork_13 test_fork_14 test_stack_1 test_stack_2 test_stack_3 test_stack_4 test_callback_1 test_callback_2 test_thread_1 test_thread_2 test_thread_3 test_thread_5 test_thread_6 test_thread_7 test_thread_8 )

set (dyninst_OBJS_ALL_MUTATORS test1_1.o test1_2.o test1_3.o test1_4.o test1_5.o test1_6.o test1_7.o test1_8.o test1_9.o test1_10.o test1_11.o test1_12.o test1_13.o test1_14.o test1_15.o test1_16.o test1_17.o test1_18.o test1_19.o test1_20.o test1_21.o test1_22.o test_reloc.o snip_ref_shlib_var.o snip_change_shlib_var.o test_snip_remove.o init_fini_callback.o test1_23.o test1_24.o test1_25.o test1_26.o test1_27.o test1_28.o test1_29.o test1_30.o test1_31.o test1_32.o test1_33.o test1_34.o test1_36.o test1_37.o test1_38.o test1_39.o test1_40.o test1_41.o test_write_param.o test_pt_ls.o test2_1.o test2_2.o test2_3.o test2_4.o test2_5.o test2_6.o test2_7.o test2_8.o test2_11.o test2_12.o test2_13.o test2_14.o test3_1.o test3_2.o test3_3.o test3_4.o test3_5.o test3_6.o test3_7.o test4_1.o test4_2.o test4_3.o test4_4.o test5_1.o test5_2.o test5_3.o test5_4.o test5_5.o test5_6.o test5_7.o test5_8.o test5_9.o test_fork_5.o test_fork_6.o test_fork_7.o test_fork_8.o test_fork_9.o test_fork_10.o test_fork_11.o test_fork_12.o test_fork_13.o test_fork_14.o test_stack_1.o test_stack_2.o test_stack_3.o test_stack_4.o test_callback_1.o test_callback_2.o test_thread_1.o test_thread_2.o test_thread_3.o test_thread_5.o test_thread_6.o test_thread_7.o test_thread_8.o )


include_directories ("..src/instruction")
set (instruction_MUTATORS test_instruction_read_write test_instruction_farcall test_instruction_bind_eval test_instruction_profile power_decode aarch64_decode aarch64_cft aarch64_decode_ldst aarch64_simd power_cft fucompp mov_size_details )

set (instruction_OBJS_ALL_MUTATORS test_instruction_read_write.o test_instruction_farcall.o test_instruction_bind_eval.o test_instruction_profile.o power_decode.o aarch64_decode.o aarch64_cft.o aarch64_decode_ldst.o aarch64_simd.o power_cft.o fucompp.o mov_size_details.o )


include_directories ("..src/symtab")
set (symtab_MUTATORS test_lookup_func test_lookup_var test_local_var_lookup test_local_var_locations test_add_symbols test_line_info test_module test_relocations test_type_info test_symtab_ser_funcs test_ser_anno )

set (symtab_OBJS_ALL_MUTATORS test_lookup_func.o test_lookup_var.o test_local_var_lookup.o test_local_var_locations.o test_add_symbols.o test_line_info.o test_module.o test_relocations.o test_type_info.o test_symtab_ser_funcs.o test_ser_anno.o )

set (MUTATOR_NAME_LIST
	aarch64_cft
	aarch64_decode
	aarch64_decode_ldst
	aarch64_simd
	fucompp
	init_fini_callback
	mov_size_details
	pc_addlibrary
	pc_breakpoint
	pc_detach
	pc_groups
	pc_irpc
	pc_launch
	pc_library
	pc_singlestep
	pc_stat
	pc_temp_detach
	pc_terminate
	pc_terminate_stopped
	pc_thread
	pc_thread_cont
	pc_tls
	power_cft
	power_decode
	snip_change_shlib_var
	snip_ref_shlib_var
	test1_1
	test1_10
	test1_11
	test1_12
	test1_13
	test1_14
	test1_15
	test1_16
	test1_17
	test1_18
	test1_19
	test1_2
	test1_20
	test1_21
	test1_22
	test1_23
	test1_24
	test1_25
	test1_26
	test1_27
	test1_28
	test1_29
	test1_3
	test1_30
	test1_31
	test1_32
	test1_33
	test1_34
	test1_36
	test1_37
	test1_38
	test1_39
	test1_4
	test1_40
	test1_41
	test1_5
	test1_6
	test1_7
	test1_8
	test1_9
	test2_1
	test2_11
	test2_12
	test2_13
	test2_14
	test2_2
	test2_3
	test2_4
	test2_5
	test2_6
	test2_7
	test2_8
	test3_1
	test3_2
	test3_3
	test3_4
	test3_5
	test3_6
	test3_7
	test4_1
	test4_2
	test4_3
	test4_4
	test5_1
	test5_2
	test5_3
	test5_4
	test5_5
	test5_6
	test5_7
	test5_8
	test5_9
	test_add_symbols
	test_callback_1
	test_callback_2
	test_fork_10
	test_fork_11
	test_fork_12
	test_fork_13
	test_fork_14
	test_fork_5
	test_fork_6
	test_fork_7
	test_fork_8
	test_fork_9
	test_instruction_bind_eval
	test_instruction_farcall
	test_instruction_profile
	test_instruction_read_write
	test_line_info
	test_local_var_locations
	test_local_var_lookup
	test_lookup_func
	test_lookup_var
	test_module
	test_pt_ls
	test_reloc
	test_relocations
	test_ser_anno
	test_snip_remove
	test_stack_1
	test_stack_2
	test_stack_3
	test_stack_4
	test_symtab_ser_funcs
	test_thread_1
	test_thread_2
	test_thread_3
	test_thread_5
	test_thread_6
	test_thread_7
	test_thread_8
	test_type_info
	test_write_param
	)

set (MUTATOR_MODULE_LIB_LIST
	testinstruction
	testinstruction
	testinstruction
	testinstruction
	testinstruction
	testdyninst
	testinstruction
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testproccontrol
	testinstruction
	testinstruction
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testsymtab
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testinstruction
	testinstruction
	testinstruction
	testinstruction
	testsymtab
	testsymtab
	testsymtab
	testsymtab
	testsymtab
	testsymtab
	testdyninst
	testdyninst
	testsymtab
	testsymtab
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testsymtab
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testdyninst
	testsymtab
	testdyninst
	)

set (SRC src)
set (MUTATOR_SOURCE_LIST
	${SRC}/instruction/aarch64_cft.C
	${SRC}/instruction/aarch64_decode.C
	${SRC}/instruction/aarch64_decode_ldst.C
	${SRC}/instruction/aarch64_simd.C
	${SRC}/instruction/fucompp.C
	${SRC}/dyninst/init_fini_callback.C
	${SRC}/instruction/mov_size_details.C
	${SRC}/proccontrol/pc_addlibrary.C
	${SRC}/proccontrol/pc_breakpoint.C
	${SRC}/proccontrol/pc_detach.C
	${SRC}/proccontrol/pc_groups.C
	${SRC}/proccontrol/pc_irpc.C
	${SRC}/proccontrol/pc_launch.C
	${SRC}/proccontrol/pc_library.C
	${SRC}/proccontrol/pc_singlestep.C
	${SRC}/proccontrol/pc_stat.C
	${SRC}/proccontrol/pc_temp_detach.C
	${SRC}/proccontrol/pc_terminate.C
	${SRC}/proccontrol/pc_terminate_stopped.C
	${SRC}/proccontrol/pc_thread.C
	${SRC}/proccontrol/pc_thread_cont.C
	${SRC}/proccontrol/pc_tls.C
	${SRC}/instruction/power_cft.C
	${SRC}/instruction/power_decode.C
	${SRC}/dyninst/snip_change_shlib_var.C
	${SRC}/dyninst/snip_ref_shlib_var.C
	${SRC}/dyninst/test1_1.C
	${SRC}/dyninst/test1_10.C
	${SRC}/dyninst/test1_11.C
	${SRC}/dyninst/test1_12.C
	${SRC}/dyninst/test1_13.C
	${SRC}/dyninst/test1_14.C
	${SRC}/dyninst/test1_15.C
	${SRC}/dyninst/test1_16.C
	${SRC}/dyninst/test1_17.C
	${SRC}/dyninst/test1_18.C
	${SRC}/dyninst/test1_19.C
	${SRC}/dyninst/test1_2.C
	${SRC}/dyninst/test1_20.C
	${SRC}/dyninst/test1_21.C
	${SRC}/dyninst/test1_22.C
	${SRC}/dyninst/test1_23.C
	${SRC}/dyninst/test1_24.C
	${SRC}/dyninst/test1_25.C
	${SRC}/dyninst/test1_26.C
	${SRC}/dyninst/test1_27.C
	${SRC}/dyninst/test1_28.C
	${SRC}/dyninst/test1_29.C
	${SRC}/dyninst/test1_3.C
	${SRC}/dyninst/test1_30.C
	${SRC}/dyninst/test1_31.C
	${SRC}/dyninst/test1_32.C
	${SRC}/dyninst/test1_33.C
	${SRC}/dyninst/test1_34.C
	${SRC}/dyninst/test1_36.C
	${SRC}/dyninst/test1_37.C
	${SRC}/dyninst/test1_38.C
	${SRC}/dyninst/test1_39.C
	${SRC}/dyninst/test1_4.C
	${SRC}/dyninst/test1_40.C
	${SRC}/dyninst/test1_41.C
	${SRC}/dyninst/test1_5.C
	${SRC}/dyninst/test1_6.C
	${SRC}/dyninst/test1_7.C
	${SRC}/dyninst/test1_8.C
	${SRC}/dyninst/test1_9.C
	${SRC}/dyninst/test2_1.C
	${SRC}/dyninst/test2_11.C
	${SRC}/dyninst/test2_12.C
	${SRC}/dyninst/test2_13.C
	${SRC}/dyninst/test2_14.C
	${SRC}/dyninst/test2_2.C
	${SRC}/dyninst/test2_3.C
	${SRC}/dyninst/test2_4.C
	${SRC}/dyninst/test2_5.C
	${SRC}/dyninst/test2_6.C
	${SRC}/dyninst/test2_7.C
	${SRC}/dyninst/test2_8.C
	${SRC}/dyninst/test3_1.C
	${SRC}/dyninst/test3_2.C
	${SRC}/dyninst/test3_3.C
	${SRC}/dyninst/test3_4.C
	${SRC}/dyninst/test3_5.C
	${SRC}/dyninst/test3_6.C
	${SRC}/dyninst/test3_7.C
	${SRC}/dyninst/test4_1.C
	${SRC}/dyninst/test4_2.C
	${SRC}/dyninst/test4_3.C
	${SRC}/dyninst/test4_4.C
	${SRC}/dyninst/test5_1.C
	${SRC}/dyninst/test5_2.C
	${SRC}/dyninst/test5_3.C
	${SRC}/dyninst/test5_4.C
	${SRC}/dyninst/test5_5.C
	${SRC}/dyninst/test5_6.C
	${SRC}/dyninst/test5_7.C
	${SRC}/dyninst/test5_8.C
	${SRC}/dyninst/test5_9.C
	${SRC}/symtab/test_add_symbols.C
	${SRC}/dyninst/test_callback_1.C
	${SRC}/dyninst/test_callback_2.C
	${SRC}/dyninst/test_fork_10.C
	${SRC}/dyninst/test_fork_11.C
	${SRC}/dyninst/test_fork_12.C
	${SRC}/dyninst/test_fork_13.C
	${SRC}/dyninst/test_fork_14.C
	${SRC}/dyninst/test_fork_5.C
	${SRC}/dyninst/test_fork_6.C
	${SRC}/dyninst/test_fork_7.C
	${SRC}/dyninst/test_fork_8.C
	${SRC}/dyninst/test_fork_9.C
	${SRC}/instruction/test_instruction_bind_eval.C
	${SRC}/instruction/test_instruction_farcall.C
	${SRC}/instruction/test_instruction_profile.C
	${SRC}/instruction/test_instruction_read_write.C
	${SRC}/symtab/test_line_info.C
	${SRC}/symtab/test_local_var_locations.C
	${SRC}/symtab/test_local_var_lookup.C
	${SRC}/symtab/test_lookup_func.C
	${SRC}/symtab/test_lookup_var.C
	${SRC}/symtab/test_module.C
	${SRC}/dyninst/test_pt_ls.C
	${SRC}/dyninst/test_reloc.C
	${SRC}/symtab/test_relocations.C
	${SRC}/symtab/test_ser_anno.C
	${SRC}/dyninst/test_snip_remove.C
	${SRC}/dyninst/test_stack_1.C
	${SRC}/dyninst/test_stack_2.C
	${SRC}/dyninst/test_stack_3.C
	${SRC}/dyninst/test_stack_4.C
	${SRC}/symtab/test_symtab_ser_funcs.C
	${SRC}/dyninst/test_thread_1.C
	${SRC}/dyninst/test_thread_2.C
	${SRC}/dyninst/test_thread_3.C
	${SRC}/dyninst/test_thread_5.C
	${SRC}/dyninst/test_thread_6.C
	${SRC}/dyninst/test_thread_7.C
	${SRC}/dyninst/test_thread_8.C
	${SRC}/symtab/test_type_info.C
	${SRC}/dyninst/test_write_param.C
	)

foreach (val RANGE 139)
	list (GET MUTATOR_NAME_LIST ${val} lib)
	list (GET MUTATOR_SOURCE_LIST ${val} source)
	list (GET MUTATOR_MODULE_LIB_LIST ${val} comp_dep)
	set(SKIP FALSE)
	foreach (dep ${comp_dep})
		if(NOT TARGET ${dep})
			set(SKIP TRUE)
		endif()
	endforeach()
	if(NOT SKIP)
		add_library (${lib} ${source})
		target_link_libraries (${lib} ${comp_dep} ${LIBTESTSUITE})
		install (TARGETS ${lib} 
		         RUNTIME DESTINATION ${INSTALL_DIR}
		         LIBRARY DESTINATION ${INSTALL_DIR})
	endif()
endforeach()

