Hi,

I'm helping co-maintain the thrift packages in Fedora (taking over a bit
from a less active maintainer), and I'm wondering if any of the thrift
developers familiar with the thrift build system could give us a sanity
check on our RPM thrift.spec file. In particular, the %prep (where tarball
is unpacked and patches are applied), %build (where configure/make are
called to build the project), and %install (where `make install` is called)
sections.

Fedora's packaging specification can be found here:
http://pkgs.fedoraproject.org/cgit/rpms/thrift.git/tree/

Downstream packaging is important, because it helps your software reach new
users, and helps your existing users easily get started using your project,
so I hope somebody will be interested in helping out a bit. And, unlike
commercial vendor packaging (not that there's anything wrong with that),
downstream open source packaging communities like Fedora (and Debian,
Homebrew, etc.) promote open source models of development and
community-building and can reach a new audience of potential contributors
to the upstream projects.

We've had to do a lot of patching of the build to get thrift to build at
all in Fedora, and I'm wondering if maybe there's some things we can do to
simplify our builds a bit. I'm also hoping that what we're doing downstream
can help inform where you should make improvements upstream to your build
system. For example, Fedora will probably always need to patch ant to use
local (RPM-provided) dependencies, but perhaps the patch could be
simplified if Thrift realized this was needed by some downstream packagers?

As you may have seen, I've been opening some JIRA issues already with the
build system:
https://issues.apache.org/jira/browse/THRIFT-4118
https://issues.apache.org/jira/browse/THRIFT-4119
https://issues.apache.org/jira/browse/THRIFT-4120
https://issues.apache.org/jira/browse/THRIFT-4122

I'm willing to continue reporting issues as I find them, but I may have
reached my limit on my ability to understand Thrift's build system (I'm not
that familiar with C/C++ build tooling, and autotools seems daunting to
me). As is, thrift's packaging in Fedora is far more complicated than most.
I'm hoping that can be changed with some assistance from the upstream
developers. Simplification can ensure that thrift will be continued to be
packaged and available to Fedora users for a long time.

Feel free to get involved in the Fedora project (it's also open source) or
contact me directly if you have any questions, or thoughts, or wish to
offer your assistance in any way. I can be reached at ctubb...@apache.org or
ctubb...@fedoraproject.org (in addition to following this thread).

Thank you for your time,

Christopher

Reply via email to