因此为了更加地通用跨平台,可以在工程里面创建一个类似vc中stdafx.cpp的源文件:header.cpp。 target("test") set_precompiled_header("header.h","header.cpp") header.cpp的内容如下: #include"header.h" 上面的设置,就可以很好地处理各种情况下的预编译处理,追加的header.cpp也告诉了xmake:header.h是作为c++...
如果gcc/clang下,header.h想作为c++的预编译头文件就不支持了,除非改成header.hpp(默认会当做c头文件进行预编译)。 因此为了更加地通用跨平台,可以在工程里面创建一个类似vc中stdafx.cpp的源文件:header.cpp。 target("test") set_precompiled_header("header.h", "header.cpp") header.cpp的内容如下: #inclu...
set_precompiled_header("header.h", "header.cpp") 1. 2. header.cpp的内容如下: #include "header.h" 1. 上面的设置,就可以很好地处理各种情况下的预编译处理,追加的header.cpp也告诉了xmake:header.h是作为c++来预编译的。 相对于经典的vc工程中的stdafx.cpp和stdafx.h,也能完美支持: target("test")...
target:installdir()和set_installdir(),置安装目录. add_platformdirs自定义扩展平台. add_installfiles,自定义安装文件. add_configfiles和set_configvar, xmake project支持生成CMakelist.txt. 用private, public, interface继承目标配置. add_configs()加自定义配置到包. add_headerfiles,加头文件. xmake update ...
set_precompiled_header("header.h|header.hpp")//设置预编译头.`xmake.lua`所在为基路径xmake project -k compile_commands//编译命令. 生成编译数据库文件用于外部工具.帮助在此 option:enable(false)//禁用选项.print(val("host"))print(val("env PATH")) ...
target("test")set_precompiled_header("header.hpp") 其中的参数指定的是需要预编译的头文件路径,相对于当前xmake.lua所在的目录。 如果只是调用xmake命令行进行直接编译,那么上面的设置足够了,并且已经对各个编译器进行支持,但是有些情况下,上面的设置还不能满足需求: ...
target("test")set_pmxxheader("header.h") 完整例子见:Objc Precompiled Header Example 改进Conan 2.0 支持 上个版本,我们初步支持了 Conan 2.0,但是还遇到了一些细节问题,这个版本我们持续做了改进,比如改进对 vs_runtime 设置问题。 更新lua 运行时 ...
因此,我们新增了 set_pmheader 和set_pmxxheader 接口,单独设置 objc/objc++ 的预编译头文件,跟 C/C++ 预编译头互不冲突。 但用法完全一样。 target("test") set_pmxxheader("header.h") 完整例子见:Objc Precompiled Header Example 改进Conan 2.0 支持 上个版本,我们初步支持了 Conan 2.0,但是还遇到了...
set_kind("library", {headeronly = true}) 有些库可能支持非头文件模式编译,通常使用 header_only 来命名 config,然后 on_load 和on_install 需要做对应处理。 add_configs("header_only", {description = "Use header only version.", default = true, type = "boolean"}) on_load(function (package) ...
add_requires("tbox >1.6.1","libuv master","vcpkg::ffmpeg","brew::pcre2/libpcre2-8")add_requires("conan::openssl/1.1.1g", {alias="openssl",optional=true,debug=true})target("test")set_kind("binary")add_files("src/*.c")add_packages("tbox","libuv","vcpkg::ffmpeg","brew::pcre2...