Rename IRCV3 to BUILD_IRCV3 and fix tests linking, add headers to filesystem

This commit is contained in:
Alex D. 2020-09-15 17:11:34 +02:00
parent 93e8a5b2a5
commit 23dcf01dfe
Signed by: caskd
GPG Key ID: F92BA85F61F4C173
3 changed files with 21 additions and 15 deletions

View File

@ -8,7 +8,7 @@ if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Debug) set(CMAKE_BUILD_TYPE Debug)
endif() endif()
if ( IRCV3 ) if ( BUILD_IRCV3 )
add_definitions(-DUIRC_IRCV3) add_definitions(-DUIRC_IRCV3)
endif() endif()
if ( BUILD_TESTS ) if ( BUILD_TESTS )
@ -28,4 +28,9 @@ endif()
add_library(uirc SHARED ${build_FILES}) add_library(uirc SHARED ${build_FILES})
set_property(TARGET uirc PROPERTY C_STANDARD 99) set_property(TARGET uirc PROPERTY C_STANDARD 99)
install(DIRECTORY "${CMAKE_SOURCE_DIR}/include/"
DESTINATION "include/uirc"
FILES_MATCHING PATTERN "*.h"
)
install(TARGETS uirc DESTINATION ${CMAKE_INSTALL_BINDIR}) install(TARGETS uirc DESTINATION ${CMAKE_INSTALL_BINDIR})

View File

@ -9,13 +9,13 @@
First, create the required build files (usually the Makefile) First, create the required build files (usually the Makefile)
```sh ```sh
cmake -H. -Bbuild/ -DBUILD_HELPERS=1 -DCMAKE_BUILD_TYPE=Release -DIRCV3=1 cmake -H . -B build/ -DBUILD_HELPERS=1 -DCMAKE_BUILD_TYPE=Release -DBUILD_IRCV3=1
``` ```
| Option | Description | Type | Supported since | | Option | Description | Type | Supported since |
|:-------------:|:---------------------------------------------------------------------:|:--------:|:---------------:| |:-------------:|:---------------------------------------------------------------------:|:--------:|:---------------:|
| BUILD_HELPERS | Build simple assemblers and tokenizers that handle the heavy lifting | boolean | - | | BUILD_HELPERS | Build simple assemblers and tokenizers that handle the heavy lifting | boolean | - |
| BUILD_TESTS | Build tests that check if the build results behave as they should | boolean | - | | BUILD_TESTS | Build tests that check if the build results behave as they should | boolean | - |
| IRCV3 | Build IRCv3 support (WIP) | boolean | - | | BUILD_IRCV3 | Build IRCv3 support (WIP) | boolean | - |
Following that, just use your build system and compile it Following that, just use your build system and compile it

View File

@ -1,4 +1,5 @@
cmake_minimum_required(VERSION 3.16) cmake_minimum_required(VERSION 3.16)
find_library(UIRC_PATH NAMES uirc libuirc REQUIRED)
add_executable(tokenizer tokenizer.c) add_executable(tokenizer tokenizer.c)
add_executable(overflow overflow.c) add_executable(overflow overflow.c)
@ -9,14 +10,14 @@ add_executable(notrail notrail.c)
add_executable(spacedargs spacedargs.c) add_executable(spacedargs spacedargs.c)
add_executable(strtokmr strtokmr.c) add_executable(strtokmr strtokmr.c)
target_link_libraries(tokenizer uirc) target_link_libraries(tokenizer ${UIRC_PATH})
target_link_libraries(overflow uirc) target_link_libraries(overflow ${UIRC_PATH})
target_link_libraries(prefixassm uirc) target_link_libraries(prefixassm ${UIRC_PATH})
target_link_libraries(msgassm uirc) target_link_libraries(msgassm ${UIRC_PATH})
target_link_libraries(numericmds uirc) target_link_libraries(numericmds ${UIRC_PATH})
target_link_libraries(notrail uirc) target_link_libraries(notrail ${UIRC_PATH})
target_link_libraries(spacedargs uirc) target_link_libraries(spacedargs ${UIRC_PATH})
target_link_libraries(strtokmr uirc) target_link_libraries(strtokmr ${UIRC_PATH})
add_test(NAME Tokenizer COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/tokenizer) add_test(NAME Tokenizer COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/tokenizer)
add_test(NAME Overflow COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/overflow) add_test(NAME Overflow COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/overflow)
@ -27,17 +28,17 @@ add_test(NAME IncorrectTrailing COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/notrai
add_test(NAME SpacedArguments COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/spacedargs) add_test(NAME SpacedArguments COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/spacedargs)
add_test(NAME StrTokMoveSave COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/strtokmr) add_test(NAME StrTokMoveSave COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/strtokmr)
if ( IRCV3 ) if ( BUILD_IRCV3 )
add_executable(tagtok tagtok.c) add_executable(tagtok tagtok.c)
add_executable(tagassm tagassm.c) add_executable(tagassm tagassm.c)
if ( BUILD_HELPERS ) if ( BUILD_HELPERS )
add_executable(timestamp timestamp.c) add_executable(timestamp timestamp.c)
endif() endif()
target_link_libraries(tagtok uirc) target_link_libraries(tagtok ${UIRC_PATH})
target_link_libraries(tagassm uirc) target_link_libraries(tagassm ${UIRC_PATH})
if ( BUILD_HELPERS ) if ( BUILD_HELPERS )
target_link_libraries(timestamp uirc) target_link_libraries(timestamp ${UIRC_PATH})
endif() endif()
add_test(NAME TagParser COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/tagtok) add_test(NAME TagParser COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/tagtok)