refactor: migrate MICRO_PIP to fine-grained feature flags
Replace monolithic MICRO_PIP/PIP_MICRO with granular flags: Feature flags (CMake options + platform auto-detection): - PIP_NO_FILESYSTEM, PIP_NO_THREADS, PIP_NO_SOCKET - PIP_NO_PROCESS, PIP_NO_DYNLIB, PIP_NO_FFT, PIP_NO_SERIAL Embedded optimization flag: - PIP_EMBEDDED (auto-set for Pico SDK and FreeRTOS) Controls buffer sizes, time stubs, terminal fallback, init stubs Platform blocks in CMakeLists.txt: - Pico SDK: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL; conditionally disables THREADS (no FreeRTOS) and SOCKET (no LWIP) - FreeRTOS: auto-disables FS, PROCESS, DYNLIB, FFT, SERIAL; conditionally disables SOCKET (no LWIP) - Android: auto-disables PROCESS, DYNLIB, FFT Updated 96 files across libs/, utils/, tests/, and CMakeLists.txt. Builds verified for Linux (547 tests pass) and Pico SDK (100%). Removed all MICRO_PIP and PIP_MICRO references (0 remaining).
This commit is contained in:
@@ -21,6 +21,8 @@
|
||||
|
||||
#include "piliterals_time.h"
|
||||
|
||||
#ifndef PIP_NO_SOCKET
|
||||
|
||||
/** \class PIBroadcast
|
||||
* \brief Broadcast for all interfaces, including loopback
|
||||
*
|
||||
@@ -43,7 +45,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#define MULTICAST_TTL 4
|
||||
# define MULTICAST_TTL 4
|
||||
|
||||
|
||||
PIBroadcast::PIBroadcast(bool send_only): PIThread(), PIEthUtilBase() {
|
||||
@@ -205,8 +207,8 @@ void PIBroadcast::initAll(PIVector<PINetworkAddress> al) {
|
||||
|
||||
void PIBroadcast::send(const PIByteArray & data) {
|
||||
/*if (!isRunning()) {
|
||||
reinit();
|
||||
PIThread::start(3000);
|
||||
reinit();
|
||||
PIThread::start(3000);
|
||||
}*/
|
||||
PIByteArray cd = cryptData(data);
|
||||
if (cd.isEmpty()) return;
|
||||
@@ -268,3 +270,5 @@ void PIBroadcast::run() {
|
||||
if (ac || r) reinit();
|
||||
if (ac) addressesChanged();
|
||||
}
|
||||
|
||||
#endif // PIP_NO_SOCKET
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
|
||||
#include "piethutilbase.h"
|
||||
|
||||
#ifndef PIP_NO_SOCKET
|
||||
|
||||
#include "pitranslator.h"
|
||||
#ifdef PIP_CRYPT
|
||||
# include "picrypt.h"
|
||||
@@ -129,3 +131,5 @@ size_t PIEthUtilBase::cryptSizeAddition() {
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif // PIP_NO_SOCKET
|
||||
|
||||
@@ -22,6 +22,8 @@
|
||||
#include "piethernet.h"
|
||||
#include "piliterals.h"
|
||||
|
||||
#ifndef PIP_NO_SOCKET
|
||||
|
||||
|
||||
/** \class PIPackedTCP pipackedtcp.h
|
||||
* \brief
|
||||
@@ -197,3 +199,5 @@ bool PIPackedTCP::closeDevice() {
|
||||
}
|
||||
return eth->close();
|
||||
}
|
||||
|
||||
#endif // PIP_NO_SOCKET
|
||||
|
||||
@@ -25,6 +25,8 @@
|
||||
|
||||
#include "piiodevice.h"
|
||||
#include "pitranslator.h"
|
||||
|
||||
#ifndef PIP_NO_SOCKET
|
||||
#ifdef __GNUC__
|
||||
# pragma GCC diagnostic pop
|
||||
#endif
|
||||
@@ -174,3 +176,5 @@ void PIStreamPacker::assignDevice(PIIODevice * dev) {
|
||||
uint PIStreamPacker::sizeCryptedSize() {
|
||||
return sizeof(int) + (crypt_size ? cryptSizeAddition() : 0);
|
||||
}
|
||||
|
||||
#endif // PIP_NO_SOCKET
|
||||
|
||||
Reference in New Issue
Block a user