首页 > 其他分享 >Scons用法

Scons用法

时间:2024-03-05 12:00:09浏览次数:22  
标签:文件 objs SConscript 用法 Scons path os cwd

【千锋RT-Thread】第31章 SCons 构建工具 - 知乎 (zhihu.com)

指令说明

获取工程的顶级目录并赋值给字符串变量 cwd,也就是工程的 SConstruct所在的目录

cwd = str(Dir('#'))

 获得当前路径并保存到字符串变量 cwd 中。

cwd = GetCurrentDir()
获取当前目录下的所有 C 文件。修改参数的值为其他后缀就可以匹配当前目录下的所有某类型的文件。
Glob(‘*.c’)

导入 Python 系统编程 os 模块,可以调用 os 模块提供的函数用于处理文件和目录。

 import os

得到当前目录下的所有子目录,并保存到变量 list 中

 list = os.listdir(cwd)

拼接成一个完整路径

os.path.join(cwd,d)

使用了 SCons 提供的一个内置函数 SConscript(),它可以读入一个新的 SConscript 文件,并将 SConscript 文件中所指明的源码加入到了源码编译列表 objs 中来。

objs =objs + SConscript(os.path.join(d,'SConscript'))

判断是否有SConscript文件

os.path.isfile(os.path.join(path, 'SConscript'))

 

DefineGroup(name,src,depend,**parameters)

 

标签:文件,objs,SConscript,用法,Scons,path,os,cwd
From: https://www.cnblogs.com/yianyan/p/18053693

相关文章

  • cmake基本用法教程
    cmaketutorialexamplesThreeexamples.basiccppcompileprocess.addstaticorsharedlibrarybycmake.usingthirdpartylibrary.本项目提供三个cmake的例子,以供日常使用。使用cmake编译含有头文件和多个cpp文件的项目,生成可执行文件。使用cmake编译含生成静态......
  • C# new 关键字用法
    试题回答参考思路:一,用法总结:在c#中,new关键字可用作运算符,声明修饰符,约束。1)new运算符:new运算符创建类型的新实例,调用构造函数(如果继承了基类,同时会调用基类的构造函数)。2)new声明修饰符:2.1)在用作声明修饰符时,new关键字可以显式隐藏从基类继承的成员。派生类成员变量被new关键字......
  • coalesce函数用法sql
    原文链接:https://baijiahao.baidu.com/s?id=1725625533668535989&wfr=spider&for=pccoalesce语法:COALESCE(value1,value2,...);举个例子:返回表达式中第一个非空表达式,以下语句:SELECTCOALESCE(NULL,NULL,3,4,5)FROMdual其返回结果为:3 MySQLCOALESCE与IFNULL......
  • C++ map用法总结(整理)
    (转载补充)原文链接:https://blog.csdn.net/sevenjoin/article/details/819438641,map简介map是STL的一个关联容器,它提供一对一的hash。第一个可以称为关键字(key),每个关键字只能在map中出现一次;第二个可能称为该关键字的值(value);map以模板(泛型)方式实现,可以存储任意类型的数......
  • mybatis中<![CDATA[]]>的用法
    一、<![CDATA[]]>介绍在mybatis的xml映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,所以我们要使用<![CDATA[]]>来解决。<![CDATA[]]>是什么,这是XML语法。在CDATA内部的所有内容都会被解析器忽略。假如文本包含了很多的"<"......
  • sql语句in的用法(使用多个列进行匹配)
    原文链接:https://www.cnblogs.com/hellohui/p/17670858.html今天遇到了in的新用法,即文中的第四条,使用多个列进行匹配,在此记录下。使用列值列表进行匹配:SELECT*FROM表名WHERE列名IN(值1,值2,值3,...)使用子查询返回多个结果进行匹配:SELECT*FROM表名WHERE......
  • Class.getResource() 和 ClassLoader.getResource()用法
    idea中项目目录结构 importcom.xpp.app.Dog;importjava.net.URL;publicclassMain{publicstaticvoidmain(String[]args){//当参数不带/会默认从该类所在的包下找URLurl1=Dog.class.getResource("");//file:/D:/idea_Java_......
  • Java Pattern和Matcher处理正则表达式的用法
    转自:https://zhuanlan.zhihu.com/p/626497347 结论:Pattern与Matcher一起合作.Matcher类提供了对正则表达式的分组支持,以及对正则表达式的多次匹配支持.单独用Pattern只能使用Pattern.matches(Stringregex,CharSequenceinput)一种最基础最简单的匹配。java正则表达式通过ja......
  • C++中cin的详细用法
    1.cin简介cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象,也是ostream类的对象。这里的标准输出指的是终端键盘,标准错误输出指的是终端的......
  • Linux screen命令的用法
    当谈到在Linux终端中管理会话时,screen是一个非常有用的工具。它允许你在单个终端会话中创建多个虚拟终端,从而可以同时运行多个任务,即使在断开与服务器的连接后也可以保持这些会话。下面是关于screen命令的详细介绍:1.安装和启动screen:通常,screen已经预装在大多数Linux发行版......