# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.

function(kicad_schematic_pdf target sink source)
	add_custom_target(
		"${target}"
		ALL
		DEPENDS
			${sink}
	)

	add_custom_command(
		OUTPUT
			${sink}
		COMMAND
			kicad-cli sch export pdf --output ${sink} ${source}
		COMMAND
			echo "Exported schematic: ${sink}"
		DEPENDS
			${source}
		JOB_POOL
			kicad
	)
endfunction()

function(kicad_bom_csv target sink source)
	add_custom_target(
		"${target}"
		ALL
		DEPENDS
			${sink}
	)

	add_custom_command(
		OUTPUT
			${sink}
		COMMAND
			kicad-cli sch export bom
			--fields 'Reference,Description,Value,Footprint,Manufacturer,MPN,Datasheet'
			--output ${sink}
			${source}
		COMMAND
			echo "Exported BOM: ${sink}"
		DEPENDS
			${source}
		JOB_POOL
			kicad
	)
endfunction()