File protoc-gen-go.spec of Package protoc-gen-go
#
# spec file for package protoc-gen-go
#
# copyright (c) 2023 munix9@googlemail.com
#
%global provider github
%global provider_tld com
%global project golang
%global repo protobuf
%global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo}
%global import_path %{provider_prefix}
%define src_install_dir %{_prefix}/src/%{name}
Name: protoc-gen-go
Version: 1.5.2
Release: 0
Summary: Go support for Google's protocol buffers
License: BSD-3-Clause
URL: https://github.com/golang/protobuf
Source0: %{name}-%{version}.tar.xz
Source1: vendor.tar.gz
BuildRequires: bazel-rules-go-source
BuildRequires: golang-packaging
%{go_provides}
%description
protoc-gen-go implements Go bindings for protocol buffers.
For information about protocol buffers themselves, see
https://developers.google.com/protocol-buffers/
%package source
Summary: Source code of protoc-gen-go
BuildArch: noarch
%description source
protoc-gen-go implements Go bindings for protocol buffers.
For information about protocol buffers themselves, see
https://developers.google.com/protocol-buffers/
This package contains source code for protoc-gen-go.
%prep
%autosetup -a1 -p1
%build
export GOFLAGS="-mod=vendor -buildmode=pie -trimpath"
%{goprep} %{provider_prefix}
%{gobuild} %{name}
%install
%{goinstall}
# Install sources
mkdir -p %{buildroot}%{src_install_dir}
tar -xJf %{SOURCE0} --strip-components=1 -C %{buildroot}%{src_install_dir}
# Apply patches for Bazel support
patch -p1 -d %{buildroot}%{src_install_dir} < %{_prefix}/src/bazel-rules-go/third_party/com_github_golang_protobuf-gazelle.patch
patch -p1 -d %{buildroot}%{src_install_dir} < %{_prefix}/src/bazel-rules-go/third_party/com_github_golang_protobuf-extras.patch
echo 'workspace(name = "com_github_golang_protobuf")' > %{buildroot}%{src_install_dir}/WORKSPACE
%files
%license LICENSE
%doc README.md
%{_bindir}/%{name}
%files source
%{src_install_dir}
%changelog