來自SVN的最新LLVM libc++
3.3帶有CMakeLists.txt
。我是一名CMake新手,但昨天我學習的足夠多,可以在RHEL 6.4 x86_64主機上構建libc++
簽出。爲LLVM libC++構建靜態和共享庫3.3
此外,我能夠在上述CMakeLists.txt
中添加足夠的CPack
相關命令來生成libcxx-3.3.svn-0.el6.x86_64.rpm
。但很有可能是因爲CMake
的新手而無法同時創建靜態和共享庫。
是的。我回顧了Is it possible to get CMake to build both a static and shared version of the same library?。但是,我想使用libc++
的CMakeList.txt
- 使用APPEND
的方法,而不是使用add_library
並枚舉所有源文件。
我可以通過線40 OFF
更換ON
下面建立一個靜態庫
40 option(LIBCXX_ENABLE_SHARED "Build libc++ as a shared library." ON)
41
生成靜態庫或者我可以離開它,因爲是建立起一個共享庫。
我還修改了以下幾行,例如刪除了NOT
或註釋掉了232和233行。但無論我嘗試了什麼,我似乎都無法讓靜態庫與共享庫一起構建。
232 if (NOT LIBCXX_ENABLE_SHARED)
233 list(APPEND LIBCXX_CXX_FEATURE_FLAGS -D_LIBCPP_BUILD_STATIC)
234 endif()
如何調整CMakeList.txt
文件以便同時構建兩者?