distributable:
  url: https://github.com/ipfs/kubo/archive/refs/tags/v{{version}}.tar.gz
  strip-components: 1

versions:
  github: ipfs/kubo
  ignore: /-rc\d+$/

build:
  dependencies:
    go.dev: '>=1.18<1.20'
    gnu.org/patch: '*'
  script: |
    if test "{{hw.platform}}" = "linux"; then
      # Need to pass -buildmode=pie to the build
      # or segmentation fault
      # fix found here https://github.com/docker-library/golang/issues/402#issuecomment-982204575
      patch -p1 <props/ldflags.diff
    fi
    make build CGO_ENABLED=0
    mkdir -p {{prefix}}/bin
    mv cmd/ipfs/ipfs {{prefix}}/bin

test:
  script:
    ipfs init
  env:
    # This keeps the test from polluting the user's home directory (and causing a later,
    # presumably intentional, `ipfs init` from erroring).
    IPFS_PATH: .

provides:
  - bin/ipfs
