mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-27 13:16:45 +00:00
Fix MacOS X compiler issues
This commit is contained in:
parent
20c54f7801
commit
e01ddcb8ad
@ -5,7 +5,14 @@
|
|||||||
|
|
||||||
#include <cstdint>
|
#include <cstdint>
|
||||||
#include <sys/utsname.h>
|
#include <sys/utsname.h>
|
||||||
|
#ifndef TARGET_OS_MAC
|
||||||
#include <sys/sysinfo.h> // uptime
|
#include <sys/sysinfo.h> // uptime
|
||||||
|
#else
|
||||||
|
#include <chrono> // for all examples :)
|
||||||
|
#include <time.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <sys/sysctl.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "hasp_posix.h"
|
#include "hasp_posix.h"
|
||||||
|
|
||||||
@ -139,16 +146,24 @@ void PosixDevice::update_backlight()
|
|||||||
|
|
||||||
size_t PosixDevice::get_free_max_block()
|
size_t PosixDevice::get_free_max_block()
|
||||||
{
|
{
|
||||||
|
#ifndef TARGET_OS_MAC
|
||||||
struct sysinfo s_info;
|
struct sysinfo s_info;
|
||||||
if(sysinfo(&s_info) < 0) return 0;
|
if(sysinfo(&s_info) < 0) return 0;
|
||||||
return s_info.freeram;
|
return s_info.freeram;
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t PosixDevice::get_free_heap(void)
|
size_t PosixDevice::get_free_heap(void)
|
||||||
{
|
{
|
||||||
|
#ifndef TARGET_OS_MAC
|
||||||
struct sysinfo s_info;
|
struct sysinfo s_info;
|
||||||
if(sysinfo(&s_info) < 0) return 0;
|
if(sysinfo(&s_info) < 0) return 0;
|
||||||
return s_info.freeram;
|
return s_info.freeram;
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t PosixDevice::get_heap_fragmentation()
|
uint8_t PosixDevice::get_heap_fragmentation()
|
||||||
@ -166,12 +181,32 @@ bool PosixDevice::is_system_pin(uint8_t pin)
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef TARGET_OS_MAC
|
||||||
long PosixDevice::get_uptime()
|
long PosixDevice::get_uptime()
|
||||||
{
|
{
|
||||||
struct sysinfo s_info;
|
struct sysinfo s_info;
|
||||||
if(sysinfo(&s_info) < 0) return 0;
|
if(sysinfo(&s_info) < 0) return 0;
|
||||||
return s_info.uptime;
|
return s_info.uptime;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
long PosixDevice::get_uptime()
|
||||||
|
{
|
||||||
|
using namespace std::chrono;
|
||||||
|
timeval ts;
|
||||||
|
auto ts_len = sizeof(ts);
|
||||||
|
int mib[2] = {CTL_KERN, KERN_BOOTTIME};
|
||||||
|
auto constexpr mib_len = sizeof(mib) / sizeof(mib[0]);
|
||||||
|
std::chrono::seconds sec;
|
||||||
|
if(sysctl(mib, mib_len, &ts, &ts_len, nullptr, 0) == 0) {
|
||||||
|
system_clock::time_point boot{seconds{ts.tv_sec} + microseconds{ts.tv_usec}};
|
||||||
|
sec = duration_cast<seconds>(system_clock::now() - boot);
|
||||||
|
} else {
|
||||||
|
sec = 0s;
|
||||||
|
}
|
||||||
|
return (long)sec.count();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
} // namespace dev
|
} // namespace dev
|
||||||
|
|
||||||
|
@ -29,6 +29,10 @@ build_flags =
|
|||||||
-D HASP_USE_GPIO=1
|
-D HASP_USE_GPIO=1
|
||||||
-D HASP_USE_CONFIG=0 ; Standalone application, as library
|
-D HASP_USE_CONFIG=0 ; Standalone application, as library
|
||||||
-D HASP_USE_DEBUG=1
|
-D HASP_USE_DEBUG=1
|
||||||
|
-D HASP_USE_PNGDECODE=1
|
||||||
|
-D HASP_USE_BMPDECODE=0
|
||||||
|
-D HASP_USE_GIFDECODE=0
|
||||||
|
-D HASP_USE_JPGDECODE=0
|
||||||
-D HASP_USE_MQTT=1
|
-D HASP_USE_MQTT=1
|
||||||
-D MQTT_MAX_PACKET_SIZE=2048
|
-D MQTT_MAX_PACKET_SIZE=2048
|
||||||
-D HASP_ATTRIBUTE_FAST_MEM=
|
-D HASP_ATTRIBUTE_FAST_MEM=
|
||||||
@ -66,6 +70,7 @@ lib_deps =
|
|||||||
https://github.com/eclipse/paho.mqtt.c.git
|
https://github.com/eclipse/paho.mqtt.c.git
|
||||||
bblanchon/ArduinoJson@^6.17.2 ; Json(l) parser
|
bblanchon/ArduinoJson@^6.17.2 ; Json(l) parser
|
||||||
https://github.com/fvanroie/lv_drivers
|
https://github.com/fvanroie/lv_drivers
|
||||||
|
git+https://github.com/lvgl/lv_lib_png.git#release/v7
|
||||||
|
|
||||||
lib_ignore =
|
lib_ignore =
|
||||||
paho
|
paho
|
||||||
@ -78,6 +83,7 @@ src_filter =
|
|||||||
+<../hal/sdl2>
|
+<../hal/sdl2>
|
||||||
+<../.pio/libdeps/darwin_sdl_64bits/paho/src/*.c>
|
+<../.pio/libdeps/darwin_sdl_64bits/paho/src/*.c>
|
||||||
+<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTClient.c>
|
+<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTClient.c>
|
||||||
|
+<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTClient.h>
|
||||||
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTAsync.c>
|
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTAsync.c>
|
||||||
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTAsyncUtils.c>
|
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTAsyncUtils.c>
|
||||||
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTVersion.c>
|
-<../.pio/libdeps/darwin_sdl_64bits/paho/src/MQTTVersion.c>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user