SignalServiceKit/protobuf
Michael Kirk f526a372c9 proto update
// FREEBIE
2017-06-22 15:19:46 -04:00
..
Makefile up to date protobuf building documentation 2017-04-13 10:58:43 -04:00
OWSFingerprintProtos.proto Remove phone numbers from scannable QR Code 2016-11-14 08:43:24 -05:00
OWSProvisioningProtos.proto Send user agent to desktop so they can pick a theme for us 2016-09-12 14:31:39 -04:00
OWSSignalServiceProtos.proto proto update 2017-06-22 15:19:46 -04:00
README.md up to date protobuf building documentation 2017-04-13 10:58:43 -04:00

SignalServiceKit Protobufs

These protobuf definitions are copied from Signal-Android, but modified to include a conventional ObjC classnames.

e.g.

import "objectivec-descriptor.proto";
option (google.protobuf.objectivec_file_options).class_prefix = "OWSFingerprintProtos";

Prequisites

Install protobuf 2.6, the objc plugin doesn't currently work with protobuf 3.0

brew install protobuf@2.6
# Beware if you are depending on protobuf 3.0 elsewhere
brew link --force protobuf@2.6

Install the objc plugin to $SignalServiceKitRoot/..

e.g. I have SignalServiceKit installed to ~/src/WhisperSystems/SignalServiceKit

So I run

cd ~/src/WhisperSystems
git clone https://github.com/alexeyxo/protobuf-objc

Follow the install instructions at https://github.com/alexeyxo/protobuf-objc

Building Protobuf

After changes are made to any proto, generate the ObjC classes by running:

cd ~/src/WhisperSystems/SignalServiceKit/protobuf
make