Commit Graph

520 Commits

Author SHA1 Message Date
Meco Man ea50473dc4
[ci] add error code check (#8341) 2023-12-06 13:52:30 +08:00
Meco Man 860094e893 [stm32] split stm32 drivers as normal and nano drivers
- move all normal drivers (devices framework drivers) into drivers
  folder.
- create nano folder for nano drivers
  nano drivers are only for a simply wrap of the HAL function, and
  not seek for adopting rt-thread devcies framework.
- provide unified nano console and GPIO drivers.
2023-12-03 21:25:00 +08:00
guozhanxin 0b1a49ed66 [tools/gcc.py]fix scons error. 2023-11-14 09:45:05 -05:00
Xiang.Lin da55491608
[libc][picolibc] improve gcc picolibc support 2023-11-08 02:09:09 -05:00
1ridic 1d0924c12a
[tools] Enable prebuilding action (#8133) 2023-10-23 14:06:46 +08:00
liYangYang 9afd38455d
[tools] 增加vscode pyocd下载命令 scons --target=vsc --pack=xxx 2023-10-22 10:58:16 -04:00
guozhanxin 21facce472 [tools] support LLVMEmbeddedToolchainForArm-17.0.1 2023-10-19 12:14:01 -04:00
1ridic dee82b8a26 [tools] Correct prompt message
After running "menuconfig", a message prompting you to
run "make" appears, which can be confusing.  Correct
prompt message to make it clear.
2023-09-26 10:08:17 +08:00
Meco Man dc407966fa [tools][gcc.py] avoid dist failure when try to dist MDK/IAR project.
Because for MKD/IAR project, in the rtconfig.py, there is no rtconfig.PREFIX defined.
2023-09-15 08:52:48 -04:00
Meco Man 77f31f8d8f [env][dist] adjust dist sequence 2023-09-15 08:52:48 -04:00
Meco Man c19c907b62 [env] remove --dist-strip command 2023-09-15 08:52:48 -04:00
1ridic ec9bbaceda
[tools] support Env for fish shell 2023-09-14 09:18:20 -04:00
Meco Man 30c793fdb9 [tools] add GetGCCLikePLATFORM
GCC like means the toolchains which are compatible with GCC
2023-08-21 01:25:52 -04:00
Meco Man 290678b665 [tools][gcc] remove legacy functions
- GenerateGCCConfig
- GenCconfigFile
2023-08-21 01:24:46 -04:00
GUI 6f119d4ce9
AArch64: support public linker scripts (#7831)
Signed-off-by: GuEe-GUI <GuEe-GUI@github.com>
2023-07-25 21:31:44 +08:00
Meco Man 65238275ac [tools] --project-name= can use name with space 2023-07-23 22:54:27 -04:00
Meco Man 86f127311d [tools][mdk] fix .uvoptx/uvopt project name
e.g. scons --target=mdk5/4 --project-path='test'
will generate the test.uvoptx/uvopt file correctly
2023-07-23 22:54:27 -04:00
dejavudwh 4cbc1893bd Added CI to compile more drivers for the changed BSP 2023-06-28 22:07:02 -04:00
shiwa f4294c6abc
[tool][cdk.py] scons的CDK工具宏定义改用分号作分隔符,并支持LIBS (#7610) 2023-06-09 08:59:32 +08:00
Meco Man 8768d631d0 [tools][keil] fix cannot select c99 and gnu choice in Keil-MDK 2023-05-25 12:16:41 -04:00
Bernard Xiong df839d5fdb
[building] Fix the deque issue for Env['CPPDEFINES'] (#7541) 2023-05-22 00:50:44 +08:00
shandianchengzi a294d7da9a
[HUST CSE][example] fix some typo bugs about 'sucess' and others. (#7528) 2023-05-18 10:42:44 -04:00
guozhanxin 82ccbc40db support llvm-arm 16.0 2023-05-17 12:09:10 -04:00
dejavudwh b1584e9fa9
[CI] Added feature to filter out files to file_check.py that do not require cppcheck (#7499)
Co-authored-by: supperthomas <78900636@qq.com>
2023-05-16 07:51:16 +08:00
Meco Man 6cea142222 [tool][release] add tools/release folder for the scrips that prepare the version release 2023-05-15 09:03:04 -04:00
Meco Man ebf4c0f24e [tools/ci]move file_check.py into ci folder 2023-05-13 22:53:24 -04:00
Man, Jianting (Meco) d580042145
[libc] support external third pary libc software package (#7425) 2023-04-30 12:19:57 +08:00
Man, Jianting (Meco) a3d8c76e37
[tools] comment out GenerateGCCConfig revert part of #7177 (#7188) 2023-04-07 09:44:31 +08:00
朱天龙 (Armink) f458d63d5f [tools] Add `--add-rtconfig` args for scons when you want to add macro definitions build time. 2023-04-06 23:29:45 +08:00
朱天龙 (Armink) 00a6d1a1c5 [tools] update the comment for old gen cconfig.h code. 2023-04-05 08:54:43 -04:00
Meco Man 588f5eb2c9 [tools] support scons --dist --target=xxx
like:scons --dist --target=mdk5 --project-name=hello --project-path=C:\Users\xxx\Desktop\test
scons --dist [--target=xxx] [--project-name=xxx] [--project-path=xxx]
支持在dist之后,将dist出来的工程直接生成为目标工程,相当于自动执行scons --target=xxx
2023-03-22 14:33:58 +08:00
Man, Jianting (Meco) 03216af2fb
[tools] remove auto-ci.py (#7070)
过时代码
2023-03-19 20:59:56 +08:00
supperthomas bd22ff5f8e
[tools][vsc] Add the workspace of vscode (#7017) 2023-03-04 14:42:43 -05:00
Meco Man 61a168099b [tools][keil] 生成工程时选定C99和GNU扩展方法 2023-01-29 08:44:32 -05:00
Meco Man b310541471 [env] add scons --strict
此commit意图在脚本中增加 scons --strict命令,使用该命令编译工程时,会自动将CFLAGS CXXFLAGS设置为 Werrors,即较为严格的编译模式,任何警告都会当做错误来处理。

该命令主要用于CI,在CI执行bsp编译时,可以使用 scons --strict命令。现在QEMU的rtconfig.py 为了CI检查,直接将CFLAGS加上了Werrors,导致正常编译过程中也把警告当做了错误,对日常使用该bsp造成了影响。
2023-01-12 01:43:44 -05:00
Meco Man 9bc68d26a4 format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
Man, Jianting (Meco) 8abaf17772
[tools] attach #6764 (#6799) 2023-01-02 12:46:45 +08:00
Man, Jianting (Meco) 8c7e0b71ce
[tool] 增加scons --dist --project-path=xxxx命令 (#6713)
* [tools] 所有dist都打zip包

* 完善scons --dist/dist-ide --project-name  --project-path命令
2022-12-19 01:12:08 -05:00
Man, Jianting (Meco) 4dd0e67056
[tools][musl] add scons --exec-prefix= 用于设置编译工具的前缀 (#6646)
* [tools][musl] add scons --exec-prefix= 用于设置编译工具的前缀

可以通过如下命令在qemu直接调用musl工具链:
scons --exec-path=C:\xxx\arm-linux-musleabi_for_i686-w64-mingw32\bin --exec-prefix=arm-linux-musleabi-

* comment out GenCconfigFile

* 解决部分env变量提前预载之后重载变量的问题
2022-12-06 22:30:28 -05:00
Meco Man 88e5657082 [tools] 支持通过--project-name=xxx设置生成的工程文件名称
默认为project.xx 与原来保持一致
相关:https://club.rt-thread.org/ask/article/f998b21633f90916.html
2022-11-30 21:33:23 -05:00
Man, Jianting (Meco) bdd663a33f
[libc][musl] support arm-linux-musleabi toolchain
目前基本功能已经可以在QEMU上跑起来,但是pthread和内核signal选中会报冲突。先合并一版本,后续解决这些问题。
2022-11-22 21:40:50 -05:00
guozhanxin 15eeb25ba0 【修复】工作目录下,当某一目录下的源文件都不需要添加到工程时,此目录不会被屏蔽的问题。 2022-11-14 23:48:10 -05:00
Yunjie Gu 9e152c117e c28x scons 2022-11-14 22:19:27 -05:00
wdfk-prog 93bdf5ca08 [Tools] add armclangMDK) get version support 2022-11-04 09:35:17 -04:00
Man, Jianting (Meco) 055267f049
[compiler] 增加SConscript依赖标志 AddDepend (#6534)
* [compiler] 增加SConscript依赖标志 AddDepend

* RT_USING_NEWLIB->RT_USING_NEWLIBC RT_USING_ARM_LIBC->RT_USING_ARMLIBC

* 删除过时的板载测试例程

* [gd32] 移除无用的反汇编文件

* [bsp]移除老旧bsp中对RT_USING_NEWLIBC的手动宏定义
2022-10-25 00:01:37 -04:00
Meco Man 6b60aab136 [dist-ide] 优化导出RTThread Studio工程命令
- 导出rtstudio工程时,多增加一级目录,防止BSP本地Sconscript和导出的工程的Sconscript粘接 导致编译出错
- 增加命令别名 --dist-rtstudio 该命令和 --dist-ide命令执行一致,方便用户理解,--dist-ide IDE表示的内容过于宽泛
2022-10-08 22:33:28 -04:00
YangZhongQing b9cd2b6016 build: EndBuilding need_exit after GenTargetProject
User choice IDE build, after GenTargetProject there's no need to do the rest.
并且,既然用户指定了IDE,接下来的命令行编译却仍然是使用arm-none-eabi-gcc,为什么不是用IDE的编译器呢?(也许是个bug)
2022-09-29 21:03:38 -04:00
tyx 64a6297840 [menuconfig] Fix pyconfig running errors 2022-09-29 13:35:09 +08:00
tangzz98 82bf18b771
ESP32: Support applying patch to local IDF (#6467) 2022-09-26 00:55:51 -04:00
Meco Man c38259d336 [tools] 增加scons --exec-path=xxx命令 用于动态设置编译链路径
scons --target=iar --exec-path=xxxx
scons --exec-path=xxxx
2022-09-22 22:57:09 -04:00
Meco Man d1c66d0e30 [tools][iar] 将IARPath作为独立函数 2022-09-18 15:43:18 -04:00
Meco Man e4b1128486 [iar] 修正IAR编译链名称 2022-09-15 23:54:35 -04:00
Dozingfiretruck b4df964160 fix:The directory "sdkdir" is set incorrectly 2022-09-16 11:54:19 +08:00
tangzz98 cb7fd304ff
ESP32_C3 migrate to ESP-IDF package (#6427) 2022-09-14 03:49:05 -04:00
childerxxx 5e3622402d [tools/link-order] Sort objects so that compilation can be done in a fixed link order. 2022-09-11 17:50:39 +08:00
Man, Jianting (Meco) ffe1c57240 Revert "[tools/link-orger]Sort objects before generate building target to get same link-order/map files/BIN files from the same source files."
This reverts commit 0cb6211372.
2022-09-09 20:27:22 -04:00
lanyang 0cb6211372 [tools/link-orger]Sort objects before generate building target to get same link-order/map files/BIN files from the same source files. 2022-09-09 10:45:23 -04:00
Meco Man ce16945cba [kernel][version] 采用新的版本宏定义
版本控制规范:https://semver.org/

目前的版本子号不是很规范,其中RT_VERSION甚至和VS那边造成了冲突
```c
/* RT-Thread version information */
#define RT_VERSION                      4L              /**< major version number */
#define RT_SUBVERSION                   1L              /**< minor version number */
#define RT_REVISION                     1L              /**< revise version number */
```

参考ESP32:
```c
/** Major version number (X.x.x) */
#define ESP_ARDUINO_VERSION_MAJOR   2
/** Minor version number (x.X.x) */
#define ESP_ARDUINO_VERSION_MINOR   0
/** Patch version number (x.x.X) */
#define ESP_ARDUINO_VERSION_PATCH   3
```

建议改成:
```c
/* Major version number (X.x.x) */
#define RT_VERSION_MAJOR   4
/* Minor version number (x.X.x) */
#define RT_VERSION_MINOR   2
/* Patch version number (x.x.X) */
#define RT_VERSION_PATCH   0
```
2022-09-07 10:11:45 -04:00
Man, Jianting (Meco) 5f474ed26c
[scons] 使用target=mdk5 和 iar时,打印IDE版本号 (#6315)
* [scons] 使用target=mdk5 和 iar时,打印IDE版本号

* 移除对keil iar生成功能的检查
1.这些工程是否可以生成是BSP可选项,不是每个BSP都支持
2.CI环境中并没有安转IAR和Keil环境,导致直接获取IDE版本失败

* MDKProject函数重命名为MDK2Project
2022-08-24 22:39:21 -04:00
Meco Man ecd9cd32b7 [keil.py] 修复生成Keil4/5工程文件时,头文件路径重复的问题 2022-08-22 12:11:05 -04:00
Meco Man dd94198bd6 [gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM 2022-08-16 09:39:00 +08:00
aozima f50fbb03e2 [tools] remove .sconsign.dblite when scons clean.
fixed py2 <==> py3 ValueError : unsupported pickle protocol: x
2022-08-10 11:39:52 -04:00
Meco Man eafcdd0bc2 [tools] format python code 2022-08-02 23:15:14 -04:00
Marcelo 58c4f41ac7
allow setting optional url for packages via envvar. (#5839)
* allow setting optional url for packages via envvar.

* clean up left over

* simplify code as suggested by Bernard (thanks)

* fix typo (envvar name should be all upper case)
2022-08-01 22:36:23 -04:00
Meco Man e15428c3a8 修复 工程include path 重排序问题 #6143 report 2022-08-01 21:47:04 -04:00
朱天龙 (Armink) 774efb0c5b
[tools][target][eclipse] Update the libs import for eclipse project. (#6065) 2022-06-20 13:45:54 +08:00
wugensheng ccbecfc220
[fix][building.py]修复动态模块的option的bug (#6081)
* [fix][building.py]修复动态模块option的bug
2022-06-15 16:58:16 +08:00
Meco Man c9878aacd2 [scons][iar] 将IAR的PLATFORM字段由iar调整为iccarm
将路径更新为IAR最新版本的路径
2022-06-09 07:01:59 +08:00
rewine d738ad620c
[tools/kconfig-frontends] append path for scons env (#5972) 2022-05-23 01:44:03 +08:00
SunJ 8c18ec64bd cmake默认开启生成编译数据库
tools/cmake: Add CMAKE_EXPORT_COMPILE_COMMANDS ON

Signed-off-by: SunJ <jsun@bouffalolab.com>
2022-05-10 10:13:20 +08:00
liukangcc b077e91cdf [update] support command: scons --target=xmake 2022-05-09 09:39:22 +08:00
shinu 778be73cac Fix bugs for processing command line parameters 2022-04-23 00:43:26 +08:00
wugensheng 0624bbf009
Decouple the addition of command line arguments (#5848)
* Decouple the addition of command line arguments

* Decouple the addition of command line arguments

* Modify change logs

* Modify change logs

* Decouple the addition of command line arguments

* delete wrong edits

* Modify file header

* remove duplicate imports
2022-04-22 08:23:35 +08:00
Man, Jianting (Meco) a0f8d43744
[gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM (#5802)
* [gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM
2022-04-20 09:56:04 +08:00
Tangyuxin fcc4899b60
[tools] Add Python 3 compatibility patch (#5825) 2022-04-17 23:42:32 +08:00
Bernard Xiong 1aab3607af
Revert "[dfs][romfs]支持相对地址模式 (#5768)" (#5786)
This reverts commit e68f934ff8.
2022-04-08 20:03:43 +08:00
LiuKang e1ef28a79b
[update] Sort the source file path (#5783) 2022-04-08 12:55:05 +08:00
Tangyuxin e68f934ff8
[dfs][romfs]支持相对地址模式 (#5768) 2022-04-06 21:13:12 +08:00
guozhanxin 71841b8ddd [tools] keil.py Improve error messages. 2022-03-29 16:05:42 +08:00
guo ce51d0b0cc
[tools]keil.py Distinguish LOCAL_CFLAGS/LOCAL_CXXFLAGS, refine file control (#5694) 2022-03-22 11:12:21 +08:00
ErikChanGit f3b72aa179
update the template for projcfg.ini in rt-studio (#5630)
* update the template for projcfg.ini in rt-studio

* update the template for projcfg.ini in rt-studio

Co-authored-by: ErikChan <“1043490933@qq.com>
2022-03-21 09:35:44 +08:00
guo 84ebead9c9
[tools] allow users to set specific link scripts. (#5678) 2022-03-21 08:29:31 +08:00
LiuKang 4e1b175138
[update] 通过 SCons生成 CMakefile.txt 使用相对路径 (#5677)
* [update] 通过 SCons生成 CMakefile.txt 使用相对路径
* [update] 通过 SCons生成 VSC 使用相对路径
2022-03-20 10:31:21 +08:00
liruncong ed712069ef 修正切换scons版本(比如最新的4.3.0)后,编译时在"scons: Reading SConscript files ..."后打印出"b''"的问题 2022-02-23 20:45:27 +08:00
iysheng 0e30fac069 [tools] Remove has_key methods to improve compatibility with Scons version 2022-01-26 11:14:50 +08:00
guozhanxin c811ecf998 [tool] Fix bug with missing brackets in eclipse.py 2022-01-20 20:51:30 +08:00
liukangcc 27511885f3 [update] change ccflags to cflags 2022-01-20 11:50:30 +08:00
imntjempty 92476d128a tools: fix generate .project file error. 2022-01-11 15:48:19 +08:00
guozhanxin f9b01095f2 remove unused file 1.txt 2022-01-09 10:15:36 +08:00
guozhanxin be8822db38 update buildbot.py 2022-01-09 10:02:48 +08:00
Man, Jianting (Meco) bb1084556f [console] 解决在没有定义RT_USING_DEVICE的情况下使用device报错的问题
* [console] 解决在没有定义RT_USING_DEVICE的情况下使用device报错的问题

* format codes

* [libc] 整理格式

* refresh projects
2022-01-09 00:20:32 +08:00
guo 51569a068a
Merge pull request #5418 from mysterywolf/revert-5412-clang-arm
Revert "add clang-arm support."
2021-12-24 09:17:41 +08:00
liukangcc bcdfa35f86 [update] windows tools 2021-12-24 05:36:36 +08:00
Man, Jianting (Meco) ed1f8b3f64 Revert "add clang-arm support."
This reverts commit a5f6fdc780.
2021-12-22 18:57:16 -05:00
guozhanxin a5f6fdc780 add clang-arm support. 2021-12-22 13:03:05 +08:00
Meco Man eac383f97b [tools] add function of auto-update rtconfig.h 2021-12-03 15:57:49 -05:00
Meco Man a78f957ad4 [tools][building.py] 修复加入空列表和空字符串的问题 2021-11-30 10:18:51 -05:00
Meco Man d6b60300a5 [.ignore_format] 将ignore_format分散到各个文件夹中,不必集中在根目录下 2021-09-20 15:46:53 -04:00
guozhanxin d500f2dae6 [tools] cmake-clang compatible with bsp that does not support C++. 2021-07-01 08:16:21 +08:00
guozhanxin 194e33a792 [tools] add scons --target=cmake-armclang 2021-07-01 01:30:50 +08:00