On Thu, Mar 15, 2018 at 12:03 PM, Josh Elser <els...@apache.org> wrote:
> I'm faced with what I think is a tricky issue. I'm trying to help folks to > compile HBase on PPC. The protobuf community does not publish a PPC binary > for protoc which means that the HBase build can't generate our protobuf > files. Protobuf supports: x86/x86_64 for linux, windows, and osx in 3.3.0 > (an aarch_64 starting in 3.5.0). > > I'm trying to think through any/all solutions: > > 1. Get protobuf folks to build/publish protoc for PPC. > 2. Commit our generated java files to the repository and provide an option > to skip compilation on unsupported ARCHs. > 3. Try to find/create some non-official PPC support ala > https://github.com/os72/protoc-jar > 4. Do nothing > > Evaluating these, #1 and #3 are a "later" solution. #2 puts some pain on > developers to git-add these files if they are modified. Maybe not a lot of > pain since protocol changes should be infrequent at this point? > > We used to do this but after some work the nice protobuf-maven-plugin that provides platform-appropriate protoc made it so we could skip having to do this halving (IIRC) the size of our checkout. Have a PPC profile that messes w/ the module list? (Claim on the profiles doc page is that its possible[1]). Exclude hbase-protocol* modules if os finds that the platform is PPC? (Activating a profile based off os is common usage). Have the PPC profile depend on published versions of these jars? Would something like this do Josh? St.Ack 1. http://maven.apache.org/guides/introduction/introduction-to-profiles.html > There seems to be some stalled work for #1 via > https://github.com/google/protobuf/pull/3506 > > What do people think? I'm probably between a rock and a hard place to get > this work one way or another in the immediate. If there's support for this > in the community, I'd prefer to work towards that. > > - Josh >