首页 > 其他分享 >第三库FindXXX.cmake

第三库FindXXX.cmake

时间:2023-04-07 20:34:51浏览次数:34  
标签:CMAKE TYPE 第三 PREFIX BUILD INSTALL cmake DCMAKE FindXXX

1、CURL

include (../cmake/ExternalProjectHelper)

if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
find_external_project_add(NAME curl
DEPENDS "openssl"
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DUSE_SYSTEM_SSL=${USE_SYSTEM_SSL} -DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libcurl-d.a)
else()
find_external_project_add(NAME curl
DEPENDS "openssl"
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DUSE_SYSTEM_SSL=${USE_SYSTEM_SSL} -DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libcurl.a)
endif()

2、OPENSSL

include (../cmake/ExternalProjectHelper)

if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
find_external_project_add(NAME openssl
# BUILD_SHARED_LIBRARY
DEPENDS ""
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libcrypto.a ${CMAKE_INSTALL_PREFIX}/lib/libssl.a)
else()
find_external_project_add(NAME openssl
# BUILD_SHARED_LIBRARY
DEPENDS ""
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libcrypto.a ${CMAKE_INSTALL_PREFIX}/lib/libssl.a)
endif()
3、gtest

include (../cmake/ExternalProjectHelper)

if(${CMAKE_BUILD_TYPE} STREQUAL "Debug")
find_external_project_add(NAME gtest
DEPENDS ""
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libgtestd.a ${CMAKE_INSTALL_PREFIX}/lib/libgtest_maind.a)
else()
find_external_project_add(NAME gtest
DEPENDS ""
CONFIGURE_COMMANDS -DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX} -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
EXPORT_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/libgtest.a ${CMAKE_INSTALL_PREFIX}/lib/libgtest_main.a)
endif()

 

标签:CMAKE,TYPE,第三,PREFIX,BUILD,INSTALL,cmake,DCMAKE,FindXXX
From: https://www.cnblogs.com/show-hand/p/17297258.html

相关文章

  • cmake 函数编译第三方库
    function(find_external_project_add)set(optionsBUILD_SHARED_LIBRARY)set(oneValueArgsNAME)set(multiValueArgsDEPENDSEXPORT_LIBRARIESCONFIGURE_COMMANDSEXTRA_LINKS)cmake_parse_arguments(Argument"${options}""${oneValueArgs......
  • JUC并发编程基础篇第三章之Synchronized八锁案例[理解锁的对象]
    目录1、总结2、Java8锁案例1打印的方法都有synchronized修饰,先调用email,后调用Sms;输出顺序?案例2如果在发送email的方法,加入了暂定3s中的操作,打印顺序?案例3增加一个普通的方法hello,此时b线程调用hello,先打印email还是hello?案例4有两部手机,先打印邮件还是短信案......
  • spring导入第三方资源对应的配置类
      importcom.alibaba.druid.pool.DruidDataSource;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.PropertySource;@PropertySource("classpa......
  • flask之request源码和第三方模块wtforms
    目录请求上下文分析(源码:request原理)1.导出项目的依赖2.函数和方法3.threading下的local对象4.偏函数5.flask整个生命执行流程---flask1.1.41版本为例wtforms---了解请求上下文分析(源码:request原理)1.导出项目的依赖以前导出项目的依赖:pipfreeze>requirements.txt......
  • 《人月神话》读后感——第三篇
    ——众所周知,一名孕妇需要36-42周才能够产下胎儿,那么如果有10名孕妇,产下胎儿的时间可以缩短到一个月以内。如果您真的着急,希望在2周之内要个孩子,那么我们只能够再添加一倍的人手。——写在最前。一般来说,本人读书之后,都会在一两个星期之内总结并且完成读书笔记,不过《人月神话》是......
  • LabVIEW调用第三方exe软件或操作操作控制第三方软件界面的控件,如操控烧录软件等
    LabVIEW调用第三方exe软件或操作操作控制第三方软件界面的控件,如操控烧录软件等除了模拟鼠标和键盘来实现之后,还可以考虑另外一种方式,使用窗口句柄来直接操作程序如下面图片实例,操作串口助手,修改串口和波特率,并写入数据和读取数据这种方式可以避免电脑的分辨率变化和位置移动等......
  • 【技术教程】在EasyCVR平台中打开第三方桌面端应用的实现过程
    EasyCVR视频融合平台基于云边端协同架构,具有强大的数据接入、处理及分发能力,平台支持海量视频汇聚管理,可支持多协议接入,包括市场主流标准协议与厂家私有协议及SDK,如:国标GB28181、RTMP、RTSP/Onvif、海康Ehome、海康SDK、宇视SDK等(具体见下图)。平台能在复杂的网络环境中,将分散的各......
  • 【技术教程】在EasyCVR平台中打开第三方桌面端应用的实现过程
    EasyCVR视频融合平台基于云边端协同架构,具有强大的数据接入、处理及分发能力,平台支持海量视频汇聚管理,可支持多协议接入,包括市场主流标准协议与厂家私有协议及SDK,如:国标GB28181、RTMP、RTSP/Onvif、海康Ehome、海康SDK、宇视SDK等(具体见下图)。平台能在复杂的网络环境中,将分散的各类......
  • cmake使用eigen库
    Eigen是一个C++开源线性代数库:提供矩阵的线性代数运算。注:Eigen是一个只有头文件的库cmake使用eigen库find_package(Eigen3)INCLUDE_DIRECTORIES(${EIGEN3_INCLUDE_DIR})程序中使用eigen库,引用各功能头文件#include<Eigen/core> ......
  • CMake 入门教程
     ......