对 makefile 中 .EXPORT_ALL_VARIABLES 的学习体会

简介:

为了学习 .EXPORT_ALL_VARIABLES ,查阅了如下的文章:

http://blog.csdn.net/zplove003/article/details/7066595 

这个文章写得很棒,演示了makefile 的嵌套调用。

这里我把其中的 顶层 Makefile改一下,用 .EXPORT_ALL_VARIABLES 来代替。

复制代码
//顶层目录下的Makeflie文件
cc=gcc                                                                                                       
SUBDIRS=f1 \
        f2 \
        main \
        obj
OBJS=f1.o f2.o main.o
BIN=myapp
OBJS_DIR=obj
BIN_DIR=bin

#export CC OBJS BIN OBJS_DIR BIN_DIR OBJS
./EXPORT_ALL_VARIABLES

all:CHECK_DIR $(SUBDIRS)
CHECK_DIR:
    mkdir -p $(BIN_DIR)
$(SUBDIRS):ECHO
    make -C $@
ECHO:
    @echo $(SUBDIRS)
    @echo begin compile
CLEAN:
    @$(RM) $(OBJS_DIR)/*.o
    @rm -rf $(BIN_DIR)
复制代码

改动后,也是可以完成编译动作。

后文待续





本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/09/25/2701375.html,如需转载请自行联系原作者

目录
相关文章
|
编解码
音频 AAC和MP3的帧大小
音频 AAC和MP3的帧大小
685 0
|
12月前
|
人工智能 监控 供应链
AI技术创业有哪些机会?
本文探讨了AI技术创业的多个机会,包括提供行业解决方案、开发智能产品和服务以及教育和培训,为创业者在医疗保健、金融服务、零售、教育等多个领域提供了丰富的机遇。
524 2
|
安全 JavaScript 数据安全/隐私保护
SELinux 安全模型——MLS
BLP 模型:于1973年被提出,是一种模拟军事安全策略的计算机访问控制模型,它是最早也是最常用的一种多级访问控制模型,主要用于保证系统信息的机密性,是第一个严格形式化的安全模型
182 3
SELinux 安全模型——MLS
|
API 调度 Android开发
探索Android应用程序的后台运行机制
在移动应用开发中,了解和掌握Android应用程序的后台运行机制至关重要。本文将深入探讨Android平台上应用程序的后台运行原理及其影响因素,包括后台服务、广播接收器、JobScheduler等关键组件,以及如何有效管理后台任务以提升应用性能和用户体验。
1333 3
|
存储 编解码 API
Android Media Framework(一)OpenMAX 框架简介
OpenMAX IL是Khronos Group为嵌入式和移动设备设计的低层级接口,用于统一调用音频、视频和图像编解码器,确保跨平台兼容性。它包括Core API(管理组件加载和方法调用)和Component API(组件实现,如源、接收器、编解码器等)。组件通过端口进行数据交互,客户端使用Core API加载和控制组件。Android引入OMX IL以支持不同芯片上的编解码器。组件状态包括Loaded、Idle、Executing和Invalid。组件架构涉及参数配置、命令处理和缓冲区管理,数据交换通过回调函数完成,端口持有预分配或组件自分配的缓冲区。
323 0
|
12月前
|
C++
Leetcode第56题(合并区间)
这篇文章介绍了LeetCode第56题“合并区间”的解题方法,通过排序和贪心策略合并重叠区间,并提供了C++的代码实现。
190 0
Leetcode第56题(合并区间)
|
11月前
|
数据采集 Java Python
爬取小说资源的Python实践:从单线程到多线程的效率飞跃
本文介绍了一种使用Python从笔趣阁网站爬取小说内容的方法,并通过引入多线程技术大幅提高了下载效率。文章首先概述了环境准备,包括所需安装的库,然后详细描述了爬虫程序的设计与实现过程,包括发送HTTP请求、解析HTML文档、提取章节链接及多线程下载等步骤。最后,强调了性能优化的重要性,并提醒读者遵守相关法律法规。
292 0
|
Java Android开发 C++
Android源代码定制:MK文件执行顺序|属性覆盖
Android源代码定制:MK文件执行顺序|属性覆盖
1089 2
Android源代码定制:MK文件执行顺序|属性覆盖
|
存储 缓存 Linux
探秘Linux块设备驱动程序:成为内核开发大师的第一步
探秘Linux块设备驱动程序:成为内核开发大师的第一步
1015 1
|
C# 开发者 设计模式
WPF开发者必读:命令模式应用秘籍,轻松简化UI与业务逻辑交互,让你的代码更上一层楼!
【8月更文挑战第31天】在WPF应用开发中,命令模式是简化UI与业务逻辑交互的关键技术,通过将请求封装为对象,实现UI操作与业务逻辑分离,便于代码维护与扩展。本文介绍命令模式的概念及实现方法,包括使用`ICommand`接口、`RelayCommand`类及自定义命令等方式,并提供示例代码展示如何在项目中应用命令模式。
203 0