Files
aaruremote/CMakeLists.txt

35 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.14)
project(dicremote C)
set(CMAKE_C_STANDARD 90)
set(MAIN_SOURCES main.c list_devices.c device.c scsi.c hex2bin.c usb.c ieee1394.c pcmcia.c ata.c sdhci.c)
if ("${CMAKE_SYSTEM}" MATCHES "Linux")
set(PLATFORM_SOURCES linux/list_devices.c linux/linux.h linux/device.c linux/scsi.c linux/usb.c linux/ieee1394.c linux/pcmcia.c linux/ata.c linux/sdhci.c)
find_library(HAS_UDEV NAMES udev)
find_path(UAPI_MMC ioctl.h /usr/include/linux/mmc/)
endif ()
add_executable(dicremote-${CMAKE_SYSTEM_PROCESSOR} ${MAIN_SOURCES} ${PLATFORM_SOURCES})
if (HAS_UDEV)
target_link_libraries(dicremote-${CMAKE_SYSTEM_PROCESSOR} udev)
add_definitions(-DHAS_UDEV)
endif ()
if (UAPI_MMC)
add_definitions(-DHAS_UAPI_MMC)
endif ()
if ("${CMAKE_SYSTEM_PROCESSOR}" MATCHES "x86_64")
add_executable(dicremote-x86 ${MAIN_SOURCES} ${PLATFORM_SOURCES})
set_target_properties(dicremote-x86 PROPERTIES LINK_FLAGS -m32)
target_compile_options(dicremote-x86 PUBLIC -m32)
if (HAS_UDEV)
target_link_libraries(dicremote-x86 udev)
add_definitions(-DHAS_UDEV)
endif ()
endif ()