@@ -146,6 +146,22 @@ pub fn build(b: *Build) !void {
146146 libaddrsort .installHeadersDirectory (upstream .path ("third_party/address_sorting/include/address_sorting" ), "address_sorting" , .{});
147147 libs_step .dependOn (& b .addInstallArtifact (libaddrsort , .{}).step );
148148
149+ // re2
150+ const re2mod = b .createModule (.{
151+ .target = target ,
152+ .optimize = optimize ,
153+ .link_libcpp = true ,
154+ });
155+ const libre2 = b .addLibrary (.{ .name = "re2" , .root_module = re2mod });
156+ re2mod .addCSourceFiles (.{
157+ .root = re2 .path ("" ),
158+ .files = & file_lists .libgrpc_third_party_re2 ,
159+ .flags = & cxx_flags ,
160+ });
161+ re2mod .addIncludePath (re2 .path ("" ));
162+ libre2 .installHeadersDirectory (re2 .path ("re2" ), "re2" , .{});
163+ libs_step .dependOn (& b .addInstallArtifact (libre2 , .{}).step );
164+
149165 // Core library
150166 const grpc = b .createModule (.{
151167 .target = target ,
@@ -165,13 +181,13 @@ pub fn build(b: *Build) !void {
165181 grpc .addIncludePath (upstream .path ("src/core/ext/upbdefs-gen" ));
166182 grpc .addIncludePath (upstream .path ("third_party/xxhash" ));
167183 grpc .addIncludePath (upstream .path ("third_party/upb" ));
168- grpc .addIncludePath (re2 .path ("" ));
169184 grpc .linkLibrary (libcares );
170185 grpc .linkLibrary (libabseil );
171186 grpc .linkLibrary (libupb );
172187 grpc .linkLibrary (libssl );
173188 grpc .linkLibrary (libz );
174189 grpc .linkLibrary (libaddrsort );
190+ grpc .linkLibrary (libre2 );
175191 if (target .result .os .tag .isDarwin ()) {
176192 grpc .linkFramework ("CoreFoundation" , .{});
177193 grpc .addCMacro ("OSATOMIC_USE_INLINED" , "1" );
0 commit comments