Bug 1256525 - include golang shared objects in the build
Summary: include golang shared objects in the build
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: golang
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Vincent Batts
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-08-24 20:05 UTC by Vincent Batts
Modified: 2015-10-01 20:23 UTC (History)
8 users (show)

Fixed In Version: golang-1.5.1-0.fc22 golang-1.5.1-0.el6 golang-1.5.1-0.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-10-01 18:51:12 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Vincent Batts 2015-08-24 20:05:57 UTC
Golang produces static binaries for go code. As of go1.5, it supports producing and using shared objects.

Let's include this libstd.so in an RPM for folks to use.

https://github.com/jbuberel/buildmodeshared has examples with build info.

Comment 1 Jan Chaloupka 2015-08-25 07:04:08 UTC
Can't wait to start playing with it :). One step closer to easier security fixes.

Wondering, if we could start providing lib subpackage for each golang package for F23 and higher.

Vincent, what would be the common directory for all golang shared libraries? /usr/lib64? What about naming convention? As there are no releases usually. goNAMElib.so.0 perhaps? Still would like to have git commit in the library name as with each update unique name is required. goNAME-GITCOMMIT-lib.so.0 perhaps?

Comment 2 Vincent Batts 2015-08-25 13:14:41 UTC
the golang stdlib will live in /usr/lib/golang/pkg/linux_$GOARCH_dynlink/ and the third party libraries will be something in $LD_LIBRARY_PATH (like /usr/lib64 etc) or $GOPATH IIUC.

Comment 3 Vincent Batts 2015-08-26 14:45:41 UTC
ugh. blocker on upstream support for shared objects on linux/386.
```
Installed Go for linux/386 in /builddir/build/BUILD/go
Installed commands in /builddir/build/BUILD/go/bin
The binaries expect /builddir/build/BUILD/go to be copied or moved to /usr/lib/golang
~/build/BUILD/go
+ popd
++ pwd
+ GOROOT=/builddir/build/BUILD/go
++ pwd
+ PATH=/builddir/build/BUILD/go/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin
+ go install -buildmode=shared std
-buildmode=shared not supported on linux/386
error: Bad exit status from /var/tmp/rpm-tmp.Q7Ah8Q (%build)
```
http://koji.fedoraproject.org/koji/buildinfo?buildID=680176

Not that I want to ship shared objects only for linux/amd64 ...
Perhaps they could go into their own subpackage, that only linux/amd64 provides?

Comment 4 Vincent Batts 2015-08-26 19:10:10 UTC
asked upstream https://groups.google.com/d/msg/golang-dev/OWlZYhGmfRk/4MLGTr29DQAJ

then opened the issue upstream https://github.com/golang/go/issues/12346

Comment 5 Jan Chaloupka 2015-08-27 07:10:18 UTC
> Not that I want to ship shared objects only for linux/amd64 ...
> Perhaps they could go into their own subpackage, that only linux/amd64 
> provides?

It could be a start. Plus introduce shared_lib_arches macro in go-srpm-macros.

Comment 6 Vincent Batts 2015-08-27 13:27:54 UTC
> It could be a start. Plus introduce shared_lib_arches macro in
> go-srpm-macros.

ah right. then we'll be a bit safe guarded for arm64, ppc64 etc. as those get bootstrapped.

Comment 7 Fedora Update System 2015-09-03 13:43:32 UTC
golang-1.5-6.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2015-14970

Comment 8 Fedora Update System 2015-09-03 13:46:33 UTC
golang-1.5-6.fc21 has been submitted as an update to Fedora 21. https://bodhi.fedoraproject.org/updates/FEDORA-2015-14972

Comment 9 Fedora Update System 2015-09-04 06:53:08 UTC
golang-1.5-6.fc21 has been pushed to the Fedora 21 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-14972

Comment 10 Fedora Update System 2015-09-04 07:29:44 UTC
golang-1.5-6.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-14970

Comment 11 Fedora Update System 2015-09-04 15:47:42 UTC
golang-1.5-6.el6 has been pushed to the Fedora EPEL 6 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-7912

Comment 12 Fedora Update System 2015-09-04 23:20:13 UTC
golang-1.5-8.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-15108

Comment 13 Fedora Update System 2015-09-11 15:31:26 UTC
golang-1.5.1-0.fc21 has been submitted as an update to Fedora 21. https://bodhi.fedoraproject.org/updates/FEDORA-2015-15618

Comment 14 Fedora Update System 2015-09-11 15:31:38 UTC
golang-1.5.1-0.el6 has been submitted as an update to Fedora EPEL 6. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-8044

Comment 15 Fedora Update System 2015-09-11 15:31:51 UTC
golang-1.5.1-0.fc22 has been submitted as an update to Fedora 22. https://bodhi.fedoraproject.org/updates/FEDORA-2015-15619

Comment 16 Fedora Update System 2015-09-13 03:49:21 UTC
golang-1.5.1-0.fc21 has been pushed to the Fedora 21 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-15618

Comment 17 Fedora Update System 2015-09-13 04:20:30 UTC
golang-1.5.1-0.fc22 has been pushed to the Fedora 22 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2015-15619

Comment 18 Fedora Update System 2015-09-14 01:50:40 UTC
golang-1.5.1-0.el6 has been pushed to the Fedora EPEL 6 testing repository. If problems still persist, please make note of it in this bug report.\nIf you want to test the update, you can install it with \n su -c 'yum --enablerepo=updates-testing update golang'. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-8044

Comment 19 Fedora Update System 2015-10-01 18:50:52 UTC
golang-1.5.1-0.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.

Comment 20 Fedora Update System 2015-10-01 18:56:28 UTC
golang-1.5.1-0.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.

Comment 21 Fedora Update System 2015-10-01 20:22:52 UTC
golang-1.5.1-0.fc21 has been pushed to the Fedora 21 stable repository. If problems still persist, please make note of it in this bug report.


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