include(${CMAKE_CURRENT_SOURCE_DIR}/../cmake.global) include(FindPythonLibs) include(FindPythonInterp) include_directories(${PYTHON_INCLUDE_PATH}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../librazer) macro(ADD_PYTHON_MODULE _NAME _STATIC_SRCS) if (NOT PYTHONINTERP_FOUND) message(FATAL_ERROR "Python scripting language not found.") endif (NOT PYTHONINTERP_FOUND) add_library(${_NAME} MODULE ${ARGN}) set_target_properties(${_NAME} PROPERTIES PREFIX "" # Remove the "lib" prefix ) install(CODE "exec_program(${PYTHON_EXECUTABLE} ARGS ${CMAKE_CURRENT_SOURCE_DIR}/install.py ${CMAKE_CURRENT_BINARY_DIR} RETURN_VALUE err) if (NOT err EQUAL 0) message(FATAL_ERROR \"Failed to install python module ${_NAME}\") endif (NOT err EQUAL 0)") endmacro (ADD_PYTHON_MODULE) option(RUNTIME_SANITY_CHECKS "Enable runtime sanity checks" ON) if (RUNTIME_SANITY_CHECKS) add_definitions(-DRUNTIME_SANITY_CHECKS) endif (RUNTIME_SANITY_CHECKS) # Built-in devices set(SRC_DEVICES devices/ports.c devices/timers.c) # The emulator core set(SRC_CORE cpu.c devprocess.c hardware.c ipc.c memory.c pinout.c python.c subprocess.c util.c) add_python_module(pyavr8emu SHARED ${SRC_CORE} ${SRC_DEVICES}) set_target_properties(pyavr8emu PROPERTIES COMPILE_FLAGS "${AVREMU_CFLAGS} -I${CMAKE_CURRENT_SOURCE_DIR}") target_link_libraries(pyavr8emu pthread rt)