M module-apps/CMakeLists.txt => module-apps/CMakeLists.txt +5 -4
@@ 119,8 119,8 @@ add_subdirectory(locks)
target_link_libraries(${PROJECT_NAME}
PRIVATE
date::date
- service-appmgr
service-antenna
+ service-appmgr
service-audio
service-cellular
service-db
@@ 129,12 129,13 @@ target_link_libraries(${PROJECT_NAME}
PUBLIC
module-audio
module-bsp
+ module-db
+ module-gui
module-os
+ module-services
module-sys
module-utils
- module-gui
- module-services
- module-db
+ utf8
${TARGET_LIBRARIES}
)
M module-db/CMakeLists.txt => module-db/CMakeLists.txt +4 -4
@@ 178,11 178,11 @@ target_compile_options(${PROJECT_NAME}
target_link_libraries(${PROJECT_NAME}
PUBLIC
- module-utils
- module-vfs
-
+ module-utils
+ module-vfs
+ utf8
PRIVATE
- Microsoft.GSL::GSL
+ Microsoft.GSL::GSL
)
# Host target configuration(mainly used for unit testing)
M module-db/Interface/AlarmsRecord.hpp => module-db/Interface/AlarmsRecord.hpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 6,8 6,8 @@
#include "Record.hpp"
#include "module-db/Databases/AlarmsDB.hpp"
#include "module-db/Common/Common.hpp"
-#include <module-utils/utf8/UTF8.hpp>
#include <module-apps/application-calendar/data/dateCommon.hpp>
+#include <utf8/UTF8.hpp>
#include <stdint.h>
namespace db::query::alarms
M module-db/Tables/AlarmsTable.hpp => module-db/Tables/AlarmsTable.hpp +5 -5
@@ 1,14 1,14 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
-#include "Table.hpp"
-#include "Record.hpp"
-#include "Database/Database.hpp"
#include "Common/Common.hpp"
-#include <module-utils/utf8/UTF8.hpp>
+#include "Database/Database.hpp"
+#include "Record.hpp"
+#include "Table.hpp"
#include <module-apps/application-calendar/data/dateCommon.hpp>
+#include <utf8/UTF8.hpp>
struct AlarmsRecord;
M module-gui/CMakeLists.txt => module-gui/CMakeLists.txt +1 -0
@@ 24,6 24,7 @@ include_directories( ../module-utils )
target_link_libraries(${PROJECT_NAME}
PUBLIC
module-utils
+ utf8
${TARGET_LIBRARIES}
PRIVATE
pugixml::pugixml
M module-services/service-cellular/CMakeLists.txt => module-services/service-cellular/CMakeLists.txt +6 -4
@@ 47,13 47,15 @@ target_include_directories(${PROJECT_NAME}
target_link_libraries(${PROJECT_NAME}
PRIVATE
- service-antenna
- service-audio
- service-evtmgr
+ Microsoft.GSL::GSL
module-bsp
module-cellular
- Microsoft.GSL::GSL
re2::re2
+ service-antenna
+ service-audio
+ service-evtmgr
+ PUBLIC
+ utf8
)
if (${ENABLE_TESTS})
M module-services/service-db/CMakeLists.txt => module-services/service-db/CMakeLists.txt +2 -0
@@ 32,6 32,8 @@ target_include_directories(${PROJECT_NAME}
target_link_libraries(${PROJECT_NAME}
PRIVATE
module-db
+ PUBLIC
+ utf8
)
if (${ENABLE_TESTS})
M module-services/service-desktop/CMakeLists.txt => module-services/service-desktop/CMakeLists.txt +6 -4
@@ 55,14 55,16 @@ target_include_directories(${PROJECT_NAME}
target_link_libraries(${PROJECT_NAME}
PRIVATE
- service-cellular
- service-evtmgr
- module-utils
- module-cellular
crc32
microtar
+ module-utils
+ service-cellular
+ service-evtmgr
+ utf8
utils-bootconfig
Microsoft.GSL::GSL
+ PUBLIC
+ module-cellular
)
if (${ENABLE_TESTS})
M module-services/service-fileindexer/CMakeLists.txt => module-services/service-fileindexer/CMakeLists.txt +11 -1
@@ 23,4 23,14 @@ target_sources( ${PROJECT_NAME}
)
-target_link_libraries(${PROJECT_NAME} module-bsp module-os module-utils module-vfs module-sys tag )
+target_link_libraries(${PROJECT_NAME}
+ PUBLIC
+ module-bsp
+ module-os
+ module-utils
+ module-vfs
+ module-sys
+ tag
+ PRIVATE
+ utf8
+)
M module-utils/CMakeLists.txt => module-utils/CMakeLists.txt +6 -7
@@ 4,8 4,7 @@ if(NOT WIN32)
include(Colours)
endif()
-project(module-utils VERSION 1.0
- DESCRIPTION "Library for processing utf8 strings.")
+project(module-utils VERSION 1.0)
if(${CMAKE_VERSION} VERSION_LESS 3.12)
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
@@ 16,7 15,6 @@ module_is_test_entity()
set (SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/i18n/i18n.cpp
${CMAKE_CURRENT_SOURCE_DIR}/json/json11.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/utf8/UTF8.cpp
${CMAKE_CURRENT_SOURCE_DIR}/time/time_conversion.cpp
${CMAKE_CURRENT_SOURCE_DIR}/common_data/EventStore.cpp
${CMAKE_CURRENT_SOURCE_DIR}/common_data/Clipboard.cpp
@@ 51,11 49,11 @@ target_link_libraries (${PROJECT_NAME} PUBLIC ${TINYEXPR_TARGET})
target_link_libraries(${PROJECT_NAME}
PUBLIC
+ board
+ log
+ magic_enum
module-os
module-vfs
- magic_enum
- log
- board
)
# Board specific compilation definitions,options,include directories and features
@@ 81,6 79,7 @@ if (${ENABLE_TESTS})
add_subdirectory( test )
endif()
+add_subdirectory(board)
add_subdirectory(bootconfig)
add_subdirectory(log)
-add_subdirectory(board)
+add_subdirectory(utf8)
M module-utils/PhoneNumber.hpp => module-utils/PhoneNumber.hpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 8,7 8,7 @@
#include <phonenumbers/phonenumberutil.h>
#include <exception>
-#include <module-utils/utf8/UTF8.hpp>
+#include <utf8/UTF8.hpp>
namespace utils
{
M module-utils/test/CMakeLists.txt => module-utils/test/CMakeLists.txt +0 -14
@@ 36,20 36,6 @@ add_catch2_executable(
utils-ucs2
SRCS
unittest_ucs2.cpp
- ../ucs2/UCS2.cpp
- ../ucs2/UCS2.hpp
- LIBS
- module-utils
-)
-
-# UTF8 tests
-add_catch2_executable(
- NAME
- utils-utf8
- SRCS
- unittest_utf8.cpp
- ../utf8/UTF8.cpp
- ../utf8/UTF8.hpp
LIBS
module-utils
)
A module-utils/utf8/CMakeLists.txt => module-utils/utf8/CMakeLists.txt +19 -0
@@ 0,0 1,19 @@
+add_library(utf8 STATIC)
+
+module_is_test_entity(utf8)
+
+target_sources(utf8
+ PRIVATE
+ utf8/UTF8.cpp
+)
+
+target_include_directories(utf8
+ PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
+)
+
+target_link_libraries(utf8 PRIVATE log)
+
+if (${ENABLE_TESTS})
+ add_subdirectory(test)
+endif()
A module-utils/utf8/test/CMakeLists.txt => module-utils/utf8/test/CMakeLists.txt +9 -0
@@ 0,0 1,9 @@
+add_catch2_executable(
+ NAME
+ utf8
+ SRCS
+ unittest_utf8.cpp
+ LIBS
+ log
+ utf8
+)
R module-utils/test/unittest_utf8.cpp => module-utils/utf8/test/unittest_utf8.cpp +0 -0
R module-utils/utf8/UTF8.cpp => module-utils/utf8/utf8/UTF8.cpp +4 -6
@@ 6,8 6,8 @@
#include <cstdint>
#include <ostream>
-#include "UTF8.hpp"
#include <log.hpp>
+#include "utf8/UTF8.hpp"
#define debug_utf(...)
@@ 115,8 115,7 @@ void U8char::set(char *val, unsigned int size)
UTF8::UTF8()
: data{std::make_unique<char[]>(stringExpansion)},
sizeAllocated{stringExpansion}, sizeUsed{1}, strLength{0}, lastIndex{0}, lastIndexData{data.get()}
-{
-}
+{}
UTF8::UTF8(const char *str)
{
@@ 166,7 165,7 @@ UTF8::UTF8(const UTF8 &utf)
else {
sizeAllocated = stringExpansion;
data = std::make_unique<char[]>(sizeAllocated);
- sizeUsed = 1;
+ sizeUsed = 1;
}
lastIndex = 0;
lastIndexData = data.get();
@@ 175,8 174,7 @@ UTF8::UTF8(const UTF8 &utf)
UTF8::UTF8(UTF8 &&utf)
: data{std::move(utf.data)}, sizeAllocated{utf.sizeAllocated}, sizeUsed{utf.sizeUsed}, strLength{utf.strLength},
lastIndex{0}, lastIndexData{data.get()}
-{
-}
+{}
UTF8::UTF8(const char *data, const uint32_t allocated, const uint32_t used, const uint32_t len)
: sizeAllocated{allocated}, sizeUsed{used}, strLength{len}, lastIndex{0}
R module-utils/utf8/UTF8.hpp => module-utils/utf8/utf8/UTF8.hpp +1 -0
@@ 63,6 63,7 @@ class UTF8
*/
uint32_t getDataBufferSize(uint32_t dataBytes);
bool expand(uint32_t size = stringExpansion);
+
public:
UTF8();
UTF8(const char *str);