%global goipath         go.fd.io/govpp
%global forgeurl        https://github.com/FDio/govpp

Version:        0.11.0

%gometa

%global common_description %{expand:
Go client libraries, code bindings generator and other toolings for VPP.}

%global golicenses      LICENSE
%global godocs          README.md

Name:           %{goname}
Release:        1%{?dist}
Summary:        Go client libraries, code bindings generator and other toolings for VPP

# Upstream license specification: Apache-2.0
License:        ASL 2.0
URL:            %{gourl}
Source0:        %{gosource}

BuildRequires:  golang(github.com/bennyscetbun/jsongo)
BuildRequires:  golang(github.com/docker/cli/cli/streams)
BuildRequires:  golang(github.com/fsnotify/fsnotify)
BuildRequires:  golang(github.com/ftrvxmtrx/fd)
BuildRequires:  golang(github.com/gookit/color)
BuildRequires:  golang(github.com/lunixbochs/struc)
BuildRequires:  golang(github.com/mitchellh/go-ps)
BuildRequires:  golang(github.com/moby/term)
BuildRequires:  golang(github.com/olekukonko/tablewriter)
BuildRequires:  golang(github.com/onsi/gomega)
BuildRequires:  golang(github.com/pkg/profile)
BuildRequires:  golang(github.com/sirupsen/logrus)
BuildRequires:  golang(github.com/spf13/cobra)
BuildRequires:  golang(github.com/spf13/pflag)
BuildRequires:  golang(golang.org/x/text)
BuildRequires:  golang(gopkg.in/yaml.v3)

%description
%{common_description}

This package contains
- govpp - CLI app for interacting with VPP instance and development of VPP API
- binapi-generator - VPP binary API generator
- vpp-proxy - VPP proxy for remote access

%godevelpkg

%prep
%goprep

%build
for cmd in cmd/binapi-generator cmd/govpp cmd/vpp-proxy; do
  %gobuild -o %{gobuilddir}/bin/$(basename $cmd) %{goipath}/$cmd
done

%install
%godevelinstall
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}

%files
%license %{golicenses}
%doc docs
%{_bindir}/binapi-generator
%{_bindir}/govpp
%{_bindir}/vpp-proxy

%gopkgfiles

%changelog