2016-05-12 04:36:12 +08:00
|
|
|
---
|
|
|
|
title: Build Options
|
2016-05-26 01:54:28 +08:00
|
|
|
items:
|
|
|
|
- { type: file, name: enabling-flags.md }
|
|
|
|
- { type: file, name: disabling-flags.md }
|
|
|
|
- { type: file, name: platform-spec.md }
|
|
|
|
- { type: file, name: tunables.md }
|
2016-05-12 04:36:12 +08:00
|
|
|
---
|
|
|
|
|
|
|
|
Mongoose source code ships in a single .c file that contains functionality
|
|
|
|
for all supported protocols (modules). Modules can be disabled at compile
|
|
|
|
time which reduces executable size. That can be done by setting preprocessor
|
|
|
|
flags. Also, some preprocessor flags can be used to tune internal Mongoose
|
|
|
|
parameters.
|
|
|
|
|
|
|
|
To set a preprocessor flag during compile time, use `-D <PREPROCESSOR_FLAG>`
|
|
|
|
compiler option. For example, to disable both MQTT and JSON-RPC,
|
|
|
|
compile the application `my_app.c` like this (assumed UNIX system):
|
|
|
|
|
|
|
|
```
|
|
|
|
$ cc my_app.c mongoose.c -D MG_DISABLE_MQTT -D MG_DISABLE_JSON_RPC
|
|
|
|
```
|