HomePhabricator
Diffusion Comm 4c5558543f6d

[services] Export native modules as CMake project, normalize structure

Description

[services] Export native modules as CMake project, normalize structure

Summary:
This is part of a larger effort to bring more structure to the C++ codebase https://linear.app/comm/issue/ENG-1310/export-nativecpp-projects-as-cmake-projects

The intent is to be able to reference the dependencies as packages, instead of just as GLOB'ing over certain directories; which is a major anti-pattern in CMake as it create a bunch of footguns such as finding multiple files with main() defined, or picking up unrelated code in generated folders.

Export NativeModules as a Cmake project

Depends on D4295

Test Plan:

nix develop
cd native/cpp/CommonCpp/NativeModules/ && mkdir -p build && cd build && cmake .. && make

Reviewers: max, karol, ashoat, atul, varun

Reviewed By: ashoat, atul

Subscribers: ashoat, tomek, adrian, atul, abosh

Differential Revision: https://phab.comm.dev/D4296

Details

Provenance
jonAuthored on Jun 15 2022, 7:58 PM
Reviewer
ashoat
Differential Revision
D4296: [services] Export native modules as CMake project, normalize structure
Parents
rCOMM5123c8a989b9: [web] Set `stroke: none` for `SWMansionIcon` SVGs
Branches
Unknown
Tags
Unknown