distributable:
  url: https://github.com/facebookexperimental/edencommon/archive/v{{version.raw}}.tar.gz
  strip-components: 1

versions:
  github: facebookexperimental/edencommon/tags

dependencies:
  facebook.com/folly: '*'
  gflags.github.io: '*'
  google.com/glog: '*'
  facebook.com/fb303: '*' # since 2024.03.18.00
  facebook.com/mvfst: '*' # since 2024.03.18.00
  openssl.org: ^1.1
  sourceware.org/bzip2: ^1

build:
  dependencies:
    cmake.org: '*'
    google.com/googletest: '*'
    boost.org: ^1

  script:
    # omit building py library
    - sed -i 's/COMPONENTS cpp2 py)/COMPONENTS cpp2)/' CMakeLists.txt
    - cmake -S . -B _build $ARGS
    - cmake --build _build
    - cmake --install _build
  env:
    ARGS:
      - -DBUILD_SHARED_LIBS=ON
      - -DCMAKE_INSTALL_PREFIX={{prefix}}
      - -DCMAKE_INSTALL_LIBDIR=lib
      - -DCMAKE_BUILD_TYPE=Release
      - -DCMAKE_VERBOSE_MAKEFILE=ON
      - -Wno-dev
      - -DBUILD_TESTING=OFF
    linux:
      CC: clang
      CXX: clang++
      LD: clang
    linux/aarch64:
      ARGS:
        - -DCMAKE_C_FLAGS=-fPIC
        - -DCMAKE_CXX_FLAGS=-fPIC
        - -DCMAKE_EXE_LINKER_FLAGS=-pie

test:
  - clang++ -std=c++17 test.cc -o test -ledencommon_utils -lfolly -lglog -lfmt
  - ./test 1
