On 3/15/18 3:45 PM, Stack wrote:
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

Interesting... I had the idea, but brushed it off because I didn't think there was a way to accomplish it realistically. Your solution makes me think it might work.

I remember the checked-in-compiled-code version (and much prefer what we have now, sadly). Let me poke at your suggestion and see what I can frankenstein together.

Thanks!

Reply via email to