• Matthew William Edwards's avatar
    Fix openr.thrift Python Module Build · 48f6f9fe
    Matthew William Edwards authored
    Summary:
    Add Dockerfile build for openr.thrift python module.
    
    The python module is built by:
    1. Building and installing Facebook libraries with fbcode_builder
    2. Building Open/R
    3. Generating Cython files from thrift files with the FB thrift compiler
    4. Generating C++ files from the Cython modules with the Cython compiler
    5. Compiling the C++ modules into shared objects
    
    Future work for building and distributing Breeze:
    
    - Fix the hacks in build_breeze.sh, see comments therein
    - Use a staged Dockerfile build for the Open/R and Breeze build
    - Install openr.thrift. The openr.thrift shared objects are build and
      stored in the Docker image generated by Dockerfile, but are unused.
    - Install all the openr python submodules in a single openr site-package
    - Add cross-compilation to the openr.thrift build. This is needed for
      Terragraph
    - Upload the openr python package to PyPi
    
    Reviewed By: saifhhasan
    
    Differential Revision: D28614443
    
    fbshipit-source-id: 38b7e7c5594fd4bb5a338f19c69e5fc3b3b95863
    48f6f9fe
fbcode_builder.py 17.5 KB