blob: 1cc4a85ebac681e8b9ea3471fbc8e825ee1985d8 [file] [log] [blame]
Taylor Holberton18939502017-10-12 20:09:05 -04001cmake_minimum_required(VERSION 3.0.2)
2
3project("TinyALSA" C)
4
5set (HDRS
Taylor Holbertonbc86b6b2019-01-13 13:10:47 -05006 "include/tinyalsa/attributes.h"
Taylor Holberton18939502017-10-12 20:09:05 -04007 "include/tinyalsa/version.h"
8 "include/tinyalsa/asoundlib.h"
9 "include/tinyalsa/pcm.h"
10 "include/tinyalsa/mixer.h")
11
12set (SRCS
13 "src/pcm.c"
14 "src/mixer.c")
15
16add_library("tinyalsa" ${HDRS} ${SRCS})
17target_compile_options("tinyalsa" PRIVATE -Wall -Wextra -Werror -Wfatal-errors)
18target_include_directories("tinyalsa" PRIVATE "include")
19
20macro(ADD_EXAMPLE EXAMPLE)
21 add_executable(${EXAMPLE} ${ARGN})
22 target_link_libraries(${EXAMPLE} "tinyalsa")
23 target_include_directories(${EXAMPLE} PRIVATE "include")
24endmacro(ADD_EXAMPLE EXAMPLE)
25
26add_example("pcm-readi" "examples/pcm-readi.c")
27add_example("pcm-writei" "examples/pcm-writei.c")
28
29macro(ADD_UTIL UTIL)
30 add_executable(${UTIL} ${ARGN})
31 target_link_libraries(${UTIL} "tinyalsa")
32 target_compile_options(${UTIL} PRIVATE -Wall -Wextra -Werror -Wfatal-errors)
33 target_include_directories(${UTIL} PRIVATE "include")
34endmacro(ADD_UTIL UTIL)
35
36add_util("tinyplay" "utils/tinyplay.c")
37add_util("tinycap" "utils/tinycap.c")
38add_util("tinypcminfo" "utils/tinypcminfo.c")
39add_util("tinymix" "utils/tinymix.c")
40
41install(FILES ${HDRS}
42 DESTINATION "include/tinyalsa")
43
Khem Rajfe4f3c22019-12-16 22:58:41 -080044if(NOT DEFINED CMAKE_INSTALL_LIBDIR)
45 set(CMAKE_INSTALL_LIBDIR lib)
46endif()
47
48if(NOT DEFINED CMAKE_INSTALL_BINDIR)
49 set(CMAKE_INSTALL_BINDIR bin)
50endif()
51
Taylor Holberton18939502017-10-12 20:09:05 -040052install(TARGETS "tinyalsa"
53 "tinyplay"
54 "tinycap"
55 "tinymix"
56 "tinypcminfo"
Khem Rajfe4f3c22019-12-16 22:58:41 -080057 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
58 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
59 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
Taylor Holberton18939502017-10-12 20:09:05 -040060