当文件夹中有许多文件一起编译时我们通常会将makefile文件写成遍历模式,如下所示:


.PHONY:clean all
all:@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; \do cd `dirname $$x`; if [ $$? ]; then make || exit 1; cd ../; fi; doneclean:$(components)@for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; \do cd `dirname $$x`; if [ $$? ]; then make clean; cd ../; fi; done

但是如果我们并不想全部编译呢?该怎么写呢?可以试试 filter-out,定义一个变量,将其从文件夹中过滤出来。

具体如下:

exclude_components =include
exclude_components +=wifi***
components := $(shell find . -maxdepth 1 -type d)
components := $(basename $(patsubst ./%,%,$(components)))
components := $(filter-out $(exclude_components), $(components))
.PHONY:clean all
all:@echo $(components)@for comp in $(components);do make -C $$comp||exit;doneclean:$(components)@for comp in $(components);do make -C $$comp clean;done

Makefile编译部分文件夹的写法相关推荐

  1. 在Makefile中创建文件夹指令

    $(shell mkdir -p $(PACKAGE_PATH)/updater/src/.profile) 在updater/src目录下创建.profile文件夹

  2. 编写Makefile:编译当前文件夹以及子文件夹下所有的ccpp文件并生成可执行文件

    makevar: (预定义一些变量,包括编译器,g++/gcc编译的参数,全局宏定义等,该文件会包含在Makefle中) KE := make CC := gcc CXX := g++ CXXFLAG ...

  3. Lichee(三) Android4.0该产品的目标文件夹,Lichee链接---extract-bsp

    由<Lichee() 在sun4i_crane平台下的编译>介绍了编译lichee的基本情况,我们终于得到了编译后的结果例如以下: out/ ├── android │   ├── bIm ...

  4. ASP.NET中App_Code,App_Data等文件夹的作用

    ASP.NET中App_Code,App_Data等文件夹的作用 1. Bin文件夹 Bin文件夹包含应用程序所需的,用于控件.组件或者需要引用的任何其他代码的可部署程 序集.该目录中存在的任何.dl ...

  5. ASP.NET中App_Code,App_Data等文件夹的作用转

    1. Bin文件夹 Bin文件夹包含应用程序所需的,用于控件.组件或者需要引用的任何其他代码的可部署程序集.该目录中存在的任何.dll文件将自动地链接到应用程序. 2. App_Browser文件夹 ...

  6. IDEA 的文件夹的类型说明

    IDEA 的文件夹的类型 设置文件夹方法 或者点击右上角的 文件夹的类型选择:可通过,右键文件夹,选择你要的类型: Sources Root : 源码的目录 Resources Root:源码所需资源 ...

  7. webpack 读取文件夹下的文件_TypeScript完全解读(26课时)_1.TypeScript完全解读-开发环境搭建...

    1.TypeScript完全解读-开发环境搭建 初始化项目 手动创建文件夹 D:\MyDemos\tsDemo\client-demo 用VSCode打开 npm init:初始化项目 然后我们的项目 ...

  8. 学习:ASP.NET中App_Code,App_Data等文件夹的作用(转)

    1.  Bin文件夹 Bin文件夹包含应用程序所需的,用于控件.组件或者需要引用的任何其他代码的可部署程序集.该目录中存在的任何.dll文  件将自动地链接到应用程序. 2.  App_Browser ...

  9. Eclipse中SVN过滤指定文件夹或文件下内容

    Eclipse中SVN过滤指定文件夹或文件下内容  通过Eclipse开发过程中,大多数正式项目都会通过SVN等管理,所以在使用SVN中,难免会遇到不需要或不允许提交的文件列表出现同步列表里(例如An ...

最新文章

  1. JavaScript初学者编程题(7)
  2. Unity UGUI 小知识
  3. 萌新发问:MyBatis日志到底是如何做到兼容所有常用日志框架的?
  4. kafka安装、配置、启动、常用命令及shell启动脚本编写
  5. layui获得列表json数据_golang实战开发之博客功能篇:文章列表的读取与展示和分类筛选展示处理...
  6. linux中央服务器,如何在Linux上搭建一个Git中央仓库
  7. 基于Spring Cloud微服务化开发平台-Cloud Platform后台管理系统 v3.1.0
  8. ExtJS学习之路第三步:理解引擎之下,ExtJS4中的类
  9. RPG 学习 一 基本
  10. stm32F103 模拟I2C mpu6050收到数据全为0,或者地址为209,104,0x68,0xD0的一些解决办法总结
  11. Linux 集群搭建
  12. 如果更快的访问ESS系统?
  13. 爬取豆瓣电影排行榜(评分)
  14. 实战——登陆注册管理后台
  15. 阿里云 企业邮箱域名解析(DNS)
  16. C++ 单词转换例子
  17. gmail通讯录同步
  18. 地鼠宝宝的轶事奇闻之线程模型
  19. Oracle数据库常见问题及解决办法
  20. Python-pytest、unittest

热门文章

  1. 提高总账和日记账导入的性能
  2. 向军php视频,向军老师PHP视频教程
  3. 电脑不用,用电脑伤身,不用伤心
  4. spca5xx-LE in S3C2410
  5. java mouseevent_Java MouseEvent位置不准确
  6. Eclipse导出可执行Jar包及相关资源路径的处理
  7. 创作星-创意大爆发!AI文案生成器让创作轻松快捷,轻松撰写出热门标题。
  8. Flink SourceFunction/SinkFunction
  9. 今日新闻大事件 2020年11月25日 星期三
  10. 2023年4月自考总结