Bug 2227331 - %gobuild macro doesn't include BUILDTAGS support
Summary: %gobuild macro doesn't include BUILDTAGS support
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: go-srpm-macros
Version: CentOS Stream
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: David Benoit
QA Contact: qe-baseos-tools-bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-07-28 17:50 UTC by Lokesh Mandvekar
Modified: 2023-08-14 12:17 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker RHELPLAN-163805 0 None None None 2023-07-28 17:51:44 UTC

Description Lokesh Mandvekar 2023-07-28 17:50:39 UTC
This bug was initially created as a copy of Bug #2227328

I am copying this bug because: 



Description of problem:

%gobuild macro on c8s does not include `BUILDTAGS` in its definition. This needs us to redefine gobuild on container-tools packages to get c8s builds to pass.
See: https://github.com/containers/podman/blob/main/rpm/podman.spec#L10-L15


Also, see the %gobuild defs on Fedora v/s C8S



On C9S
# rpm --eval %gobuild

CGO_CPPFLAGS="-D_FORTIFY_SOURCE=2 -fstack-protector-all" go build -compiler gc -buildmode pie '-tags=rpm_crashtraceback libtrust_openssl ' -ldflags "-linkmode=external -compressdwarf=false ${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -extldflags '%__global_ldflags'" -a -v -x ;


On Fedora:
$ rpm --eval %gobuild

  # https://pagure.io/go-rpm-macros/pull-request/38
  # Most of the default LDFLAGS for Fedora are not supported so we don't want
  # LDFLAGS to be automatically initialized with the Fedora flags.
  
  # https://bugzilla.redhat.com/show_bug.cgi?id=995136#c12
     GO111MODULE=off \
  go build -buildmode pie -compiler gc -tags="rpm_crashtraceback ${BUILDTAGS:-}" -ldflags "${LDFLAGS:-}  -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -compressdwarf=false -linkmode=external -extldflags '-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -Wl,--build-id=sha1   '" -a -v -x ;

Comment 1 Lokesh Mandvekar 2023-07-28 19:30:48 UTC
It would be nice to have `go-srpm-macros` also include a `Provides: go-rpm-macros` for consistency with Fedora and c9s.


Note You need to log in before you can comment on or make changes to this bug.