cmake_minimum_required(VERSION 3.31)
project(bshell C)

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)

find_package(Python COMPONENTS Interpreter REQUIRED)
find_package(FX REQUIRED COMPONENTS
	fx.runtime
	fx.collections
	fx.term)

execute_process(
	COMMAND ${Python_EXECUTABLE}
		${CMAKE_CURRENT_SOURCE_DIR}/tools/build-id.py
	OUTPUT_VARIABLE bshell_version)

file(GLOB_RECURSE bshell_sources
	bshell/*.c
	bshell/*.h)

message(STATUS "B Shell version: ${bshell_version}")

add_executable(bshell ${bshell_sources})

target_link_libraries(bshell FX::Runtime FX::Collections FX::Term)
target_compile_definitions(bshell PUBLIC
	BSHELL_VERSION="${bshell_version}")
