#!/usr/bin/ruby require 'mkmf' if RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/ # XOPEN_SOURCE needed for strptime: # https://stackoverflow.com/questions/35234152/strptime-giving-implicit-declaration-and-undefined-reference $CFLAGS += " -std=c99 -O3 -DNDEBUG -D_XOPEN_SOURCE=700" else $CFLAGS += " -std=c99 -O3 -DNDEBUG" end if RUBY_PLATFORM =~ /linux/ # Instruct the linker to point memcpy calls at our __wrap_memcpy wrapper. $LDFLAGS += " -Wl,-wrap,memcpy" end $objs = ["protobuf.o", "defs.o", "storage.o", "message.o", "repeated_field.o", "map.o", "encode_decode.o", "upb.o", "wrap_memcpy.o"] create_makefile("google/protobuf_c")