Bug 557366

Summary: Review Request: Google-Go - A new systems programming language from Google
Product: [Fedora] Fedora Reporter: Alex Combas <alex.combas>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: cse.cem+redhatbugz, esm, fedora-package-review, mail, notting, pahan, smilner, terje.rosten
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-05-14 16:57:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 201449    

Description Alex Combas 2010-01-21 07:56:50 UTC
Spec URL: http://dl.dropbox.com/u/4165082/google-go-0.3.spec
SRPM URL: http://dl.dropbox.com/u/4165082/google-go-20100120-0.3.src.rpm
Description: 

This is my first package. I am seeking a sponsor.

Google Go is aimed at producing a language which compiles quickly, 
has fast execution time, and comes with built in concurrency support.

This is a devel-snapshot of the plan9 style compilers for Go.

The developers have created a rather elegant build system for Go, however shaping it into the FHS has taken a bit of work. So when deciding where to place the files in light of the FHS I tried to use gcc as my guide as much as possible.

RPMLINT ERRORS :25

Errors are because of the following reasons:

1. Statically linked binarys: The reason for this is that Go is incapable of generating dynamically linked binary at the moment, so all Go binary will be static.

2. Files which end in .go are Go source code, and do not require shebang. 

3. Python scripts starting with "#!/usr/bin/env python" this is on purpose.

4. ~place-holder~ is not a backup file.

5. Go.plist is not a shell script, and does not require shebang.

WARNINGS: 833 

The warnings are almost all because of the presense of "devel" files.

Google-Go is a devel package, it doesn't really make sense to create two packages when both would be required for Go development, so I have made them as a single package.

RPMLINT ERROR OUTPUT:

google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/hgpatch/hgpatch
google-go.x86_64: E: statically-linked-binary /usr/bin/gofmt
google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/ebnflint/ebnflint
google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/godoc/godoc
google-go.x86_64: E: statically-linked-binary /usr/bin/godoc
google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/gofmt/gofmt
google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/cgo/cgo
google-go.x86_64: E: statically-linked-binary /usr/bin/ebnflint
google-go.x86_64: E: statically-linked-binary /usr/bin/cgo
google-go.x86_64: E: statically-linked-binary /usr/lib64/google-go/20100120/src/cmd/goyacc/goyacc
google-go.x86_64: E: statically-linked-binary /usr/bin/goyacc
google-go.x86_64: E: statically-linked-binary /usr/bin/hgpatch
google-go.x86_64: E: missing-PT_GNU_STACK-section /usr/lib64/google-go/20100120/src/pkg/debug/elf/testdata/gcc-386-freebsd-exec
google-go.x86_64: E: standard-dir-owned-by-package /usr/bin
google-go.x86_64: E: non-executable-script /usr/lib64/google-go/20100120/src/pkg/syscall/mksysnum_nacl.sh 0644 /usr/bin/perl
google-go.x86_64: E: script-without-shebang /usr/lib64/google-go/20100120/test/hashmap.go
google-go.x86_64: E: non-executable-script /usr/share/google-go/20100120/dashboard/builder.sh 0644 /bin/sh
google-go.x86_64: E: non-executable-script /usr/lib64/google-go/20100120/lib/codereview/codereview.py 0644 /usr/bin/env
google-go.x86_64: E: backup-file-in-package /usr/lib64/google-go/20100120/pkg/~place-holder~
google-go.x86_64: E: script-without-shebang /usr/lib64/google-go/20100120/src/cmd/godoc/snippet.go
google-go.x86_64: E: non-executable-script /usr/share/google-go/20100120/dashboard/buildcontrol.py 0644 /usr/bin/env
google-go.x86_64: E: non-executable-script /usr/lib64/google-go/20100120/src/cmd/clean.bash 0644 /usr/bin/env
google-go.x86_64: E: non-executable-script /usr/lib64/google-go/20100120/src/pkg/xgb/go_client.py 0644 /usr/bin/env
google-go.x86_64: E: zero-length /usr/lib64/google-go/20100120/src/pkg/runtime/nacl/signals.h
google-go.x86_64: E: script-without-shebang /usr/share/google-go/20100120/bbedit/Go.plist

Comment 1 Terje Røsten 2010-01-22 08:24:53 UTC
Warning: building this srpm will delete files on your system:

%prep
rm -rf %{_builddir}/*

Comment 2 Alex Combas 2010-01-22 19:44:25 UTC
Updated spec and src.rpm 

Old URL's will no longer work, please use the updated files.

http://dl.dropbox.com/u/4165082/google-go-0.4.spec
http://dl.dropbox.com/u/4165082/google-go-20100120-0.4.src.rpm

Comment 3 Pavel Alexeev 2010-01-25 17:54:45 UTC
Spec file incorrectly named, must bee %{name}.spec

Comment 4 Terje Røsten 2010-01-25 18:10:20 UTC
Would also be nice if you could take a look on the guidelines:

 https://fedoraproject.org/wiki/Packaging:Guidelines

there several things that are missing (src url, where is build section etc). Also create a fedora account and store files on fedorapeople, a koji scratch build would be nice too. Seems like you need to talk to upstream so the package could be packaged in FHS compatible style.

Comment 5 Terje Røsten 2010-01-27 22:19:06 UTC
Go will be part of gcc so this could be dropped I guess.

 http://lwn.net/Articles/371466/

Comment 6 Alex Combas 2010-01-27 22:44:26 UTC
Fine with me.

Comment 7 Ed Marshall 2010-01-27 22:49:07 UTC
There's a difference between Go and gccgo, however. Specifically, gccgo has a couple of limitations:

http://golang.org/doc/gccgo_install.html#Unimplemented

The lack of garbage collection makes it mostly a non-starter for serious development right now.

Comment 8 Steve Milner 2010-04-21 01:31:22 UTC
The spec/srpm have gone away. Any chance they can be reposted?

Comment 9 Conrad Meyer 2010-04-30 02:55:58 UTC
Alex, are you still interested in getting this approved?

Comment 10 Fabian Affolter 2010-07-03 23:04:09 UTC

*** This bug has been marked as a duplicate of bug 610934 ***