From fe58249d4f9c690d7a27d7278c4466877e9c3247 Mon Sep 17 00:00:00 2001 From: c2ny Date: Wed, 14 Jan 2026 22:33:58 -0500 Subject: [PATCH] initial. libsoundio works. --- .gitignore | 2 ++ CMakeLists.txt | 29 +++++++++++++++++++++++++++++ CMakePresets.json | 30 ++++++++++++++++++++++++++++++ src/main.c | 8 ++++++++ src/ntypes.h | 9 +++++++++ 5 files changed, 78 insertions(+) create mode 100644 .gitignore create mode 100644 CMakeLists.txt create mode 100644 CMakePresets.json create mode 100644 src/main.c create mode 100644 src/ntypes.h diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3c0160d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +build/ +out/ diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..87be052 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,29 @@ +cmake_minimum_required(VERSION 3.28) + +project(voice-chat + VERSION 0.1.0 + LANGUAGES C) + +set(C_STANDARD 23) +set(C_STANDARD_REQUIRED True) + +add_executable(${PROJECT_NAME} src/main.c) + +# TODO: set with if checks +set(ENABLE_ALSA ON CACHE BOOL "") +set(ENABLE_PULSEAUDIO OFF CACHE BOOL "") +set(ENABLE_JACK OFF CACHE BOOL "") +set(ENABLE_COREAUDIO OFF CACHE BOOL "") +set(ENABLE_WASAPI OFF CACHE BOOL "") +set(BUILD_EXAMPLE_PROGRAMS OFF CACHE BOOL "") + +set(BUILD_DYNAMIC_LIBS ON CACHE BOOL "" FORCE) +set(BUILD_STATIC_LIBS ON CACHE BOOL "" FORCE) + +add_subdirectory("${CMAKE_SOURCE_DIR}/extern/libsoundio") +target_include_directories(${PROJECT_NAME} PRIVATE "${CMAKE_SOURCE_DIR}/extern/libsoundio") + +target_link_libraries(${PROJECT_NAME} PRIVATE + $<$:libsoundio_shared> + $<$:libsoundio_static> +) diff --git a/CMakePresets.json b/CMakePresets.json new file mode 100644 index 0000000..88b324b --- /dev/null +++ b/CMakePresets.json @@ -0,0 +1,30 @@ +{ + "version": 3, + "configurePresets": [ + { + "name": "dev", + "displayName": "Linux Development", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "DEBUG", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON", + + "BUILD_EXAMPLE_PROGRAMS": true, + "BUILD_TESTS": false, + "ENABLE_ALSA": true, + "ENABLE_PULSEAUDIO": false, + "ENABLE_JACK": false, + "ENABLE_COREAUDIO": false, + "ENABLE_WASAPI": false + } + } + ], + + "buildPresets": [ + { + "name": "debug", + "configurePreset": "dev" + } + ] +} diff --git a/src/main.c b/src/main.c new file mode 100644 index 0000000..92934a8 --- /dev/null +++ b/src/main.c @@ -0,0 +1,8 @@ +#include + +int +main(int argc, char *argv[]) { + printf("Hello, %s\n", argv[0]); + + return 0; +} diff --git a/src/ntypes.h b/src/ntypes.h new file mode 100644 index 0000000..d6a56d8 --- /dev/null +++ b/src/ntypes.h @@ -0,0 +1,9 @@ +// num types +#pragma once + +#include + +typedef int8_t char_t; +typedef uint8_t uchar_t; + +typedef unsigned int uint;