moved endian function to misc.c, added sleep_ms(), changed project structure

AuthorKonata <konata@posteo.jp>
Date
Commit0392d6714b82b61f826fa4e9641cc4dd434c4be0
Parent4bb654d
7 files changed, 43 insertions(+), 21 deletions(-)
▾Minclude/cutils/cutils.h
@@ -2,5 +2,5 @@
#define CUTILS_H
#include <cutils/vector.h>
#include <cutils/dyn_string.h>
#include <cutils/cutils_endian.h>
#include <cutils/misc.h>
#endif //CUTILS_H
▾Dinclude/cutils/cutils_endian.h
-17
@@ -1,17 +0,0 @@
#ifndef CUTILS_ENDIAN_H
#define CUTILS_ENDIAN_H
#include <stdint.h>
#include <string.h>
inline uint32_t ntoh32(uint32_t const net)
{
uint8_t data[4];
memcpy(&data, &net, sizeof(data));
return ((uint32_t) data[3] << 0)
| ((uint32_t) data[2] << 8)
| ((uint32_t) data[1] << 16)
| ((uint32_t) data[0] << 24);
}
#endif //CUTILS_ENDIAN_H
▾Ainclude/cutils/misc.h
@@ -0,0 +1,15 @@
#ifndef MISC_H
#define MISC_H
#include <stdint.h>
#include <string.h>
#ifdef __unix__
#include <unistd.h>
#endif
#ifdef _WIN32
#include <windows.h>
#endif
void sleep_ms(int milliseconds);
uint32_t ntoh32(uint32_t const net);
#endif //MISC_H
▾Mmeson.build
@@ -1,6 +1,7 @@
project('cutils', 'c')
CFLAGS = ['-std=c11', '-fstrict-aliasing', '-Wall', '-Wpedantic', '-Wextra']
WARNINGS = ['-Wall', '-Wpedantic', '-Wextra', '-Wnull-dereference', '-Wshadow', '-Wconversion', '-Wstrict-prototypes', '-Wmissing-prototypes', '-Wcast-qual', '-Wstrict-overflow=5', '-Wunreachable-code', '-Wno-unused-parameter' ]
CFLAGS = ['-std=c11', '-fstrict-aliasing', '-fPIC'] + WARNINGS
subdir('include')
subdir('src')
▾Msrc/meson.build
@@ -1,7 +1,7 @@
src = ['vector.c', 'dyn_string.c']
src = ['vector.c', 'dyn_string.c', 'misc.c']
srctest = src + ['test.c']
lib = shared_library('cutils', src, include_directories : inc)
cutils_dep = declare_dependency(link_with : lib)
cutils_dep = declare_dependency(link_with : lib, include_directories : inc)
executable('test_cutils', srctest, include_directories : inc, c_args: CFLAGS )
▾Asrc/misc.c
@@ -0,0 +1,22 @@
#include <cutils/misc.h>
void sleep_ms(int milliseconds)
{
#ifdef __unix__
usleep(milliseconds * 1000);
#endif
#ifdef _WIN32
Sleep(milliseconds);
#endif
}
uint32_t ntoh32(uint32_t const net)
{
uint8_t data[4];
memcpy(&data, &net, sizeof(data));
return ((uint32_t) data[3] << 0)
| ((uint32_t) data[2] << 8)
| ((uint32_t) data[1] << 16)
| ((uint32_t) data[0] << 24);
}
▾Msrc/test.c
@@ -98,4 +98,5 @@ int main(int argc, char** argv)
{
test1();
test2();
sleep_ms(1000);
}