You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 17, 2023. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+23-22Lines changed: 23 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,27 +12,27 @@ Wait - Hasn't it been possible all this time? Apparently not. You can read more
12
12
## Features
13
13
14
14
**Arduino-CMake** should<supid="fl1">[1](#f1)</sup> do almost<supid="fl2">[2](#f2)</sup> <u>anything</u> that the **Arduino IDE** does!
15
-
Here's a list of features **already supported** by **Arduino-CMake**:
16
-
17
-
* Creating Arduino "Executables"/Programs
18
-
* Uploading programs to hardware boards
19
-
* Adding/Finding and using Arduino Libraries
20
-
* 3rd Party libraries are fully supported
21
-
* User libraries which are not Arduino Libraries are also supported
22
-
* Using Arduino example programs
23
-
* Using Arduino library example programs
24
-
* Attaching Arduino sketches (`.ino` files) to programs
25
-
26
-
Moreover, **Arduino-CMake** allows some things that **Arduino IDE***doesn't*:
27
-
28
-
* Developing Arduino programs in any IDE or text editor
29
-
* Completely customizing the build process per user's requirements
30
-
31
-
What's **not** supported?
32
-
33
-
* 3rd Party *Platforms* such as ESP32, Pinoccio, etc.
34
-
* Programmers and advanced bootloaders
35
-
* Serial connection (e.g. for monitoring)
15
+
#### What's supported?
16
+
17
+
-[x] Developing Arduino programs in any IDE or text editor
18
+
-[x] Arduino Programs - *Executables*
19
+
-[x] Uploading/Flashing programs to hardware boards
20
+
-[x] Libraries
21
+
-[x] Arduino *native*libraries, built-in with most of the SDKs (such as **Blink**)
22
+
-[x] 3rd Party libraries
23
+
-[x] User libraries
24
+
-[x] Arduino example programs
25
+
-[x] Arduino library example programs
26
+
-[x]Arduino sketches (`.ino` files)
27
+
-[x] Conversion of sketch files to `.cpp` source files
28
+
-[ ] Resolving libraries used by a sketch file
29
+
-[ ] Generating required function prototypes/signatures in converted sources
30
+
-[ ] 3rd Party platforms (such as **ESP32**, **pinoccio**, etc.)
31
+
-[ ] Programmers and bootloaders
32
+
-[ ] Serial Connection (e.g. for monitoring)
33
+
-[ ] Completely customizing the build process per user's requirements
34
+
-[x] Setting custom build flags
35
+
-[ ] Using user-generated build recipes
36
36
37
37
It's also worth mentioning that **Arduino-CMake** is **<u>cross platform</u>** and works out-of-the-box on every OS that support **CMake** and **Arduino**.
You should then call **CMake** (either through *cmd*, *cmake-gui* or an *IDE* if it supports that) passing it the argument `-DCMAKE_TOOLCHAIN_FILE=[project_path]/cmake/Arduino-Toolchain.cmake` where `[project_path]` is substituted by the project's full path. This is what allows cmake to use our framework.
60
+
You should then call **CMake** (either through *cmd*, *cmake-gui* or an *IDE* if it supports that), passing it the argument
61
+
`-DCMAKE_TOOLCHAIN_FILE=[project_path]/cmake/Arduino-Toolchain.cmake` where `[project_path]` is substituted by the project's full path. This is what allows cmake to use our framework.
61
62
62
63
That's it! It's super simple, yet super extensible :)
0 commit comments