mirror of
https://github.com/JakeHillion/object-introspection.git
synced 2024-11-14 14:26:55 +00:00
88c0446ef4
Previously we maintained three types of builds: a fully internal BUCK build, a CMake build with modifications to use things from an internal toolchain, and an open source CMake build. As far as I'm concerned the intermediate build is not useful because our source is readily available in both an internal and external form. Use cases as follows: 1. BUCK build for distributing widely. 2. BUCK build for getting a static binary that can be run on any machine. 3. CMake build for primary development. 4. CMake build for external CI. With the internal update to CentOS Stream 9 an unmodified CMake build now works readily. This change patches up some things that were relying on system headers that should have been vendored and cleans up drgn dependencies. Test plan: - It builds. - TODO: Document CentOS 9 installation.
60 lines
995 B
CMake
60 lines
995 B
CMake
add_library(toml
|
|
support/Toml.cpp
|
|
)
|
|
target_link_libraries(toml PUBLIC tomlplusplus::tomlplusplus)
|
|
|
|
add_library(drgn_utils DrgnUtils.cpp)
|
|
target_link_libraries(drgn_utils
|
|
glog::glog
|
|
drgn
|
|
)
|
|
|
|
add_library(symbol_service
|
|
Descs.cpp
|
|
SymbolService.cpp
|
|
)
|
|
target_link_libraries(symbol_service
|
|
drgn_utils
|
|
|
|
Boost::headers
|
|
${Boost_LIBRARIES}
|
|
glog::glog
|
|
)
|
|
|
|
add_library(features Features.cpp)
|
|
target_link_libraries(features glog::glog)
|
|
|
|
add_library(container_info
|
|
ContainerInfo.cpp
|
|
)
|
|
target_link_libraries(container_info
|
|
features
|
|
|
|
Boost::regex
|
|
glog::glog
|
|
toml
|
|
)
|
|
|
|
add_library(codegen
|
|
CodeGen.cpp
|
|
FuncGen.cpp
|
|
OICodeGen.cpp
|
|
)
|
|
target_link_libraries(codegen
|
|
container_info
|
|
resources
|
|
symbol_service
|
|
type_graph
|
|
|
|
Boost::headers
|
|
${Boost_LIBRARIES}
|
|
folly_headers
|
|
glog::glog
|
|
)
|
|
|
|
add_library(exporters_csv exporters/CSV.cpp)
|
|
target_include_directories(exporters_csv PUBLIC ${CMAKE_SOURCE_DIR}/include)
|
|
target_link_libraries(exporters_csv oil)
|
|
|
|
add_subdirectory(type_graph)
|