From 8b7777d5f344ada591d9b31134c81ed769e99529 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jakub=20=C4=8Cajka?= Date: Tue, 16 Feb 2021 15:58:44 +0100 Subject: [PATCH] Improved bundled provides --- bundled-deps.sh | 22 ++++++++++ golang.spec | 108 +++++------------------------------------------- 2 files changed, 33 insertions(+), 97 deletions(-) create mode 100755 bundled-deps.sh diff --git a/bundled-deps.sh b/bundled-deps.sh new file mode 100755 index 0000000..1a4b9bb --- /dev/null +++ b/bundled-deps.sh @@ -0,0 +1,22 @@ +#! /bin/bash +# Copyright (C) 2021 Jakub Čajka jcajka@redhat.com +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +provides="" +for bundle in $(find -name modules.txt); do +provides="$provides\n$(cat "$bundle" | grep "^# " | grep -v "# explicit" | sed -r s/"^#.* => "// | sed -r "s/# //" | sed -r "s:(.*) (.*):Provides\: bundled(golang(\1)) = \2:")" +done +echo -e "$provides" | sort -u diff --git a/golang.spec b/golang.spec index 6d3633d..6076d00 100644 --- a/golang.spec +++ b/golang.spec @@ -139,103 +139,17 @@ BuildRequires: pcre-devel, glibc-static, perl-interpreter, procps-ng Provides: go = %{version}-%{release} -# Bundled/Vendored provides generated by -# go list -f {{.ImportPath}} ./src/vendor/... | sed "s:_$PWD/src/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" && go list -f {{.ImportPath}} ./src/cmd/vendor/... | sed "s:_$PWD/src/cmd/vendor/::g;s:_:.:;s:.*:Provides\: bundled(golang(&)):" -Provides: bundled(golang(golang.org/x/crypto/chacha20)) -Provides: bundled(golang(golang.org/x/crypto/chacha20poly1305)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte)) -Provides: bundled(golang(golang.org/x/crypto/cryptobyte/asn1)) -Provides: bundled(golang(golang.org/x/crypto/curve25519)) -Provides: bundled(golang(golang.org/x/crypto/hkdf)) -Provides: bundled(golang(golang.org/x/crypto/internal/subtle)) -Provides: bundled(golang(golang.org/x/crypto/poly1305)) -Provides: bundled(golang(golang.org/x/net/dns/dnsmessage)) -Provides: bundled(golang(golang.org/x/net/http/httpguts)) -Provides: bundled(golang(golang.org/x/net/http/httpproxy)) -Provides: bundled(golang(golang.org/x/net/http2/hpack)) -Provides: bundled(golang(golang.org/x/net/idna)) -Provides: bundled(golang(golang.org/x/net/nettest)) -Provides: bundled(golang(golang.org/x/sys/cpu)) -Provides: bundled(golang(golang.org/x/text/secure/bidirule)) -Provides: bundled(golang(golang.org/x/text/transform)) -Provides: bundled(golang(golang.org/x/text/unicode/bidi)) -Provides: bundled(golang(golang.org/x/text/unicode/norm)) -Provides: bundled(golang(github.com/google/pprof/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/binutils)) -Provides: bundled(golang(github.com/google/pprof/internal/driver)) -Provides: bundled(golang(github.com/google/pprof/internal/elfexec)) -Provides: bundled(golang(github.com/google/pprof/internal/graph)) -Provides: bundled(golang(github.com/google/pprof/internal/measurement)) -Provides: bundled(golang(github.com/google/pprof/internal/plugin)) -Provides: bundled(golang(github.com/google/pprof/internal/report)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolizer)) -Provides: bundled(golang(github.com/google/pprof/internal/symbolz)) -Provides: bundled(golang(github.com/google/pprof/internal/transport)) -Provides: bundled(golang(github.com/google/pprof/profile)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3)) -Provides: bundled(golang(github.com/google/pprof/third.party/d3flamegraph)) -Provides: bundled(golang(github.com/google/pprof/third.party/svgpan)) -Provides: bundled(golang(github.com/ianlancetaylor/demangle)) -Provides: bundled(golang(golang.org/x/arch/arm/armasm)) -Provides: bundled(golang(golang.org/x/arch/arm64/arm64asm)) -Provides: bundled(golang(golang.org/x/arch/ppc64/ppc64asm)) -Provides: bundled(golang(golang.org/x/arch/x86/x86asm)) -Provides: bundled(golang(golang.org/x/crypto/ed25519)) -Provides: bundled(golang(golang.org/x/crypto/ed25519/internal/edwards25519)) -Provides: bundled(golang(golang.org/x/crypto/ssh/terminal)) -Provides: bundled(golang(golang.org/x/mod/internal/lazyregexp)) -Provides: bundled(golang(golang.org/x/mod/modfile)) -Provides: bundled(golang(golang.org/x/mod/module)) -Provides: bundled(golang(golang.org/x/mod/semver)) -Provides: bundled(golang(golang.org/x/mod/sumdb)) -Provides: bundled(golang(golang.org/x/mod/sumdb/dirhash)) -Provides: bundled(golang(golang.org/x/mod/sumdb/note)) -Provides: bundled(golang(golang.org/x/mod/sumdb/tlog)) -Provides: bundled(golang(golang.org/x/mod/zip)) -Provides: bundled(golang(golang.org/x/sys/internal/unsafeheader)) -Provides: bundled(golang(golang.org/x/sys/unix)) -Provides: bundled(golang(golang.org/x/tools/go/analysis)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/internal/analysisflags)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/internal/facts)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/asmdecl)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/assign)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/atomic)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/bools)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/buildtag)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/cgocall)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/composite)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/copylock)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/ctrlflow)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/errorsas)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/framepointer)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/httpresponse)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/ifaceassert)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/inspect)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/internal/analysisutil)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/loopclosure)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/lostcancel)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/nilfunc)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/printf)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/shift)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/stdmethods)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/stringintconv)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/structtag)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/testinggoroutine)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/tests)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/unmarshal)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/unreachable)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/unsafeptr)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/passes/unusedresult)) -Provides: bundled(golang(golang.org/x/tools/go/analysis/unitchecker)) -Provides: bundled(golang(golang.org/x/tools/go/ast/astutil)) -Provides: bundled(golang(golang.org/x/tools/go/ast/inspector)) -Provides: bundled(golang(golang.org/x/tools/go/cfg)) -Provides: bundled(golang(golang.org/x/tools/go/types/objectpath)) -Provides: bundled(golang(golang.org/x/tools/go/types/typeutil)) -Provides: bundled(golang(golang.org/x/tools/internal/analysisinternal)) -Provides: bundled(golang(golang.org/x/tools/internal/lsp/fuzzy)) -Provides: bundled(golang(golang.org/x/xerrors)) -Provides: bundled(golang(golang.org/x/xerrors/internal)) +# Bundled/Vendored provides generated by bundled-deps.sh based on the in tree module data +Provides: bundled(golang(github.com/google/pprof)) = v0.0.0-20200229191704-1ebb73c60ed3 +Provides: bundled(golang(github.com/ianlancetaylor/demangle)) = v0.0.0-20200414190113-039b1ae3a340 +Provides: bundled(golang(golang.org/x/arch)) = v0.0.0-20200511175325-f7c78586839d +Provides: bundled(golang(golang.org/x/crypto)) = v0.0.0-20200622213623-75b288015ac9 +Provides: bundled(golang(golang.org/x/mod)) = v0.3.0 +Provides: bundled(golang(golang.org/x/net)) = v0.0.0-20201008223702-a5fa9d4b7c91 +Provides: bundled(golang(golang.org/x/sys)) = v0.0.0-20200501145240-bc7a7d42d5c3 +Provides: bundled(golang(golang.org/x/text)) = v0.3.3-0.20200430171850-afb9336c4530 +Provides: bundled(golang(golang.org/x/tools)) = v0.0.0-20200616133436-c1934b75d054 +Provides: bundled(golang(golang.org/x/xerrors)) = v0.0.0-20200806184451-1a77d5e9f316 Requires: %{name}-bin = %{version}-%{release} Requires: %{name}-src = %{version}-%{release}