免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1994 | 回复: 0
打印 上一主题 下一主题

kde4 ports中cmake的一些变量定义 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-21 15:52 |只看该作者 |倒序浏览
cmake,是kde4的构建工具,某些共用设置,集中在 area51/Mk/bsd.cmake.mk里面
其中主要的定义设置是:
一、建立依赖
CMAKE_BIN=        ${LOCALBASE}/bin/cmake
CMAKE_PORT=       ${PORTSDIR}/devel/cmake
BUILD_DEPENDS+=    ${CMAKE_BIN}:${CMAKE_PORT}
以上三行,定义了cmake的建立依赖,只要ports的Makefile文件中使用
USE_CMAKE = yes
那么系统在构建时都要检查这个依赖关系,如果cmake没有安装,先启动cmake的ports安装过程
二、cmake的基本运行环境
CMAKE_ENV?=        ${CONFIGURE_ENV}
cmake构建类型,有Release和Debug
CMAKE_BUILD_TYPE?=    Release
cmake工程文件CMakeLists.tx的目录,默认定义为当前路径   
CMAKE_SOURCE_PATH?=    .     
cmake构建系统的安装目录
CMAKE_INSTALL_PREFIX?=    ${PREFIX}
传递给cmake的变量定义
CMAKE_ARGS+=    -DCMAKE_C_COMPILER:STRING="${CC}" \
                -DCMAKE_CXX_COMPILER:STRING="${CXX}" \
                -DCMAKE_C_FLAGS:STRING="${CFLAGS}" \
                -DCMAKE_CXX_FLAGS:STRING="${CXXFLAGS}" \
                -DCMAKE_INSTALL_PREFIX:PATH="${CMAKE_INSTALL_PREFIX}" \
                -DCMAKE_BUILD_TYPE:STRING="${CMAKE_BUILD_TYPE}"
"${CC}",变量CC的值,防止多个参数,使用""扩上。
三、强制构建类型为Debug
.if defined(CMAKE_DEBUG) || defined(WITH_DEBUG)
    CMAKE_BUILD_TYPE=DEBUG
.endif
如果在Makefile中使用 CMAKE_DEBUG 或者 WITH_DEBUG 变量,设定构建类型为 Debug
四、使用多线程构建系统
.if defined(CMAKE_USE_PTHREAD)
CFLAGS+=        ${PTHREAD_CFLAGS}
CXXFLAGS+=        ${PTHREAD_CFLAGS}
CMAKE_ARGS+=    -DCMAKE_THREAD_LIBS:STRING="${PTHREAD_LIBS}" \
                -DCMAKE_USE_PTHREADS:BOOL=ON \
                -DCMAKE_EXE_LINKER_FLAGS:STRING="${PTHREAD_LIBS}"
.endif
如果想多线程建立,需要在Makefile中定义 CMAKE_USE_PTHREAD
五、一个实例:
bsd.kde4.mk 中与cmake相关的配置是:
USE_CMAKE=         yes        # 使用cmake构建
CMAKE_DEBUG=       yes        # 构建Debug版本
CMAKE_VERBOSE=     yes        # 显示构建细节
#cmake args for kde4
CMAKE_ARGS+=    -DQT_QMAKE_EXECUTABLE=${QMAKE} \
        -DQT_MKSPECS_DIR:PATH="/usr/local/share/qt4/mkspecs/freebsd-g++"
cmake参数中增加了 QT_QMAKE_EXECUTABLE 和 QT_MKSPECS_DIR 两个变量
${QMAKE}在bsd.qt.mk中定义,是qt4-qmake
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/12258/showart_1087757.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP