Bug 984312 - Review Request: libclc - An open source implementation of the OpenCL 1.1 library requirements
Review Request: libclc - An open source implementation of the OpenCL 1.1 libr...
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Adam Jackson
Fedora Extras Quality Assurance
:
Depends On:
Blocks: 887628
  Show dependency treegraph
 
Reported: 2013-07-14 15:14 EDT by Fabian Deutsch
Modified: 2013-08-19 08:07 EDT (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-08-19 08:07:02 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
airlied: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Fabian Deutsch 2013-07-14 15:14:51 EDT
Spec URL: https://github.com/fabiand/libclc-spec/blob/master/libclc.spec
SRPM URL: http://fabiand.fedorapeople.org/libclc/libclc-0.0.1-0.0.20130714git5217211.fc19.src.rpm
Description:
libclc is an open source, BSD licensed implementation of the library
requirements of the OpenCL C programming language, as specified by the
OpenCL 1.1 Specification. The following sections of the specification
impose library requirements:

Fedora Account System Username: fabiand
Comment 1 Fabian Deutsch 2013-07-14 15:15:52 EDT
rpmlint:
$ rpmlint -v libclc.spec /home/fabiand/rpmbuild/SRPMS/libclc-0.0.1-0.20130714git5217211.fc19.src.rpm /home/fabiand/rpmbuild/RPMS/x86_64/libclc-0.0.1-0.20130714git5217211.fc19.x86_64.rpm /home/fabiand/rpmbuild/RPMS/x86_64/libclc-devel-0.0.1-0.20130714git5217211.fc19.x86_64.rpm
libclc.spec:61: W: configure-without-libdir-spec
libclc.spec: W: invalid-url Source0: libclc-20130714git5217211.tar.xz
libclc.src: I: checking
libclc.src: W: spelling-error %description -l en_US typen -> type, types, typed
libclc.src: W: spelling-error %description -l en_US Preprocessor -> Processor, Predecessor, Process's
libclc.src: W: spelling-error %description -l en_US frontend -> fronted, front end, front-end
libclc.src: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc.src:61: W: configure-without-libdir-spec

^^ configure.py doesn't take libdir

libclc.src: W: invalid-url Source0: libclc-20130714git5217211.tar.xz
libclc.x86_64: I: checking
libclc.x86_64: W: spelling-error %description -l en_US typen -> type, types, typed
libclc.x86_64: W: spelling-error %description -l en_US Preprocessor -> Processor, Predecessor, Process's
libclc.x86_64: W: spelling-error %description -l en_US frontend -> fronted, front end, front-end
libclc.x86_64: W: incoherent-version-in-changelog 0.0.1 ['0.0.1-0.20130714git5217211.fc19', '0.0.1-0.20130714git5217211']
libclc.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc.x86_64: E: no-binary
libclc-devel.x86_64: I: checking
libclc-devel.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc-devel.x86_64: W: no-documentation
3 packages and 1 specfiles checked; 1 errors, 12 warnings.
Comment 2 Fabian Deutsch 2013-07-14 15:21:14 EDT
A koji build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=5606828
Comment 3 Christopher Meng 2013-07-14 19:46:53 EDT
An open source implementation of the library OpenCL 1.1 library requirements

2 same library words, maybe it can be more clear?
Comment 4 Fabian Deutsch 2013-07-15 03:42:14 EDT
(In reply to Christopher Meng from comment #3)
> An open source implementation of the library OpenCL 1.1 library requirements
> 
> 2 same library words, maybe it can be more clear?

Thanks. Changed it to:
Summary:        An open source implementation of the OpenCL 1.1 library requirements
Comment 5 Mario Blättermann 2013-07-15 13:51:56 EDT
Fabian, please provide a *downloadable* link:
https://raw.github.com/fabiand/libclc-spec/master/libclc.spec
Your spec file link points to the website, not to the raw file.
Comment 6 Fabian Deutsch 2013-07-15 17:15:52 EDT
(In reply to Mario Blättermann from comment #5)
> Fabian, please provide a *downloadable* link:
> https://raw.github.com/fabiand/libclc-spec/master/libclc.spec
> Your spec file link points to the website, not to the raw file.

Hey Mario,

thanks for that hint. You were right, I should have provided the raw link.
But is it generally fine to point to the plain-text/downloadable file hosted in some "rcs"? (so pointing to the raw file link at github?)
Comment 7 Mario Blättermann 2013-07-16 10:07:29 EDT
(In reply to Fabian Deutsch from comment #6)
> But is it generally fine to point to the plain-text/downloadable file hosted
> in some "rcs"? (so pointing to the raw file link at github?)

Yes, if possible. Well, I cannot speak for other reviewers, but I like to download both spec and srpm to a local folder and have a look at them. And if someone wants to view the file online, a browser should also be able to display plain text correctly. Github in particular (and probably some other VCS web viewers) doesn't have syntax highlighting, so there's no advantage of viewing it in the browser.
Comment 8 Fabian Deutsch 2013-07-16 10:44:04 EDT
(In reply to Mario Blättermann from comment #7)
> (In reply to Fabian Deutsch from comment #6)
> > But is it generally fine to point to the plain-text/downloadable file hosted
> > in some "rcs"? (so pointing to the raw file link at github?)
> 
> Yes, if possible. Well, I cannot speak for other reviewers, but I like to
> download both spec and srpm to a local folder and have a look at them. And
> if someone wants to view the file online, a browser should also be able to
> display plain text correctly. Github in particular (and probably some other
> VCS web viewers) doesn't have syntax highlighting, so there's no advantage
> of viewing it in the browser.

Ack.

So, what can I do to improve the spec? :)

One thing I'll do is update it to the latest upstream and adjust the Changelog entry accordingly.
Comment 9 Fabian Deutsch 2013-07-19 09:03:04 EDT
Updated the spec to:
- Use a corret release field for pre-releases
- Update to latest upstream release

SPEC:
https://raw.github.com/fabiand/libclc-spec/0.0.1-0.1/libclc.spec

SRPM:
http://fabiand.fedorapeople.org/libclc/libclc-0.0.1-0.1.20130719git2e8fa9f.fc19.src.rpm



$ rpmlint -v /home/fabiand/rpmbuild/SRPMS/libclc-0.0.1-0.1.20130719git2e8fa9f.fc19.src.rpm /home/fabiand/rpmbuild/RPMS/x86_64/libclc-0.0.1-0.1.20130719git2e8fa9f.fc19.x86_64.rpm /home/fabiand/rpmbuild/RPMS/x86_64/libclc-devel-0.0.1-0.1.20130719git2e8fa9f.fc19.x86_64.rpm /home/fabiand/rpmbuild/RPMS/x86_64/libclc-debuginfo-0.0.1-0.1.20130719git2e8fa9f.fc19.x86_64.rpm libclc.spec libclc
libclc.src: I: checking
libclc.src: W: spelling-error %description -l en_US typen -> type, types, typed
libclc.src: W: spelling-error %description -l en_US Preprocessor -> Processor, Predecessor, Process's
libclc.src: W: spelling-error %description -l en_US frontend -> fronted, front end, front-end
libclc.src: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)

libclc.src:61: W: configure-without-libdir-spec
configure.py doesn't take a libdir

libclc.src: W: invalid-url Source0: libclc-20130719git2e8fa9f.tar.xz
There is currently no public gitweb or comparable and also now downloadable tarballs.

libclc.x86_64: I: checking
libclc.x86_64: W: spelling-error %description -l en_US typen -> type, types, typed
libclc.x86_64: W: spelling-error %description -l en_US Preprocessor -> Processor, Predecessor, Process's
libclc.x86_64: W: spelling-error %description -l en_US frontend -> fronted, front end, front-end
libclc.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc.x86_64: E: no-binary
The package consist of a couple of bytecode files, now executable.

libclc-devel.x86_64: I: checking
libclc-devel.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc-devel.x86_64: W: no-documentation
The docs are in the main package

libclc-debuginfo.x86_64: I: checking
libclc-debuginfo.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc-debuginfo.x86_64: E: empty-debuginfo-package
I suppose this because there are only .bc files, and no real libraries.

libclc.spec:61: W: configure-without-libdir-spec
libclc.spec: W: invalid-url Source0: libclc-20130719git2e8fa9f.tar.xz
libclc.x86_64: I: checking
libclc.x86_64: W: spelling-error %description -l en_US typen -> type, types, typed
libclc.x86_64: W: spelling-error %description -l en_US Preprocessor -> Processor, Predecessor, Process's
libclc.x86_64: W: spelling-error %description -l en_US frontend -> fronted, front end, front-end
libclc.x86_64: I: checking-url http://libclc.llvm.org/ (timeout 10 seconds)
libclc.x86_64: E: no-binary
5 packages and 1 specfiles checked; 3 errors, 14 warnings.
Comment 10 Adam Jackson 2013-07-19 16:36:08 EDT
This is missing the actual ICD library, it seems to only be installing radeon bytecode files.  That's probably not what we want.
Comment 11 Fabian Deutsch 2013-07-19 17:00:41 EDT
(In reply to Adam Jackson from comment #10)
> This is missing the actual ICD library, it seems to only be installing
> radeon bytecode files.  That's probably not what we want.

Isn't ICD provided by https://forge.imag.fr/projects/ocl-icd/ ?

and libclc just providing some opencl functions defined by the spec?
Comment 12 Fabian Deutsch 2013-07-19 17:12:13 EDT
Looking at [0] it seems as if libclc is needed to build mesa with opencl.

Looking at [1] we can probably use ocl-icd with mesa


[0] http://dri.freedesktop.org/wiki/GalliumCompute/#index3h3
[1] http://lists.freedesktop.org/archives/mesa-dev/2013-July/041689.html
Comment 13 Fabian Deutsch 2013-08-01 09:57:23 EDT
I just checked with tstellar and he confirms that libclc is only providing bytecode files.
Comment 14 Fabian Deutsch 2013-08-07 06:36:27 EDT
Any comments?
Comment 15 Dave Airlie 2013-08-09 04:33:12 EDT
undoing ajax's review- since this is packaging what we want to build mesa, the icd comes from the already packages ocl-icd, and mesa still doesn't work so well with it yet.
Comment 16 Fabian Deutsch 2013-08-19 02:54:18 EDT
New Package SCM Request
=======================
Package Name: libclc
Short Description: An open source implementation of the OpenCL 1.1 library requirements
Owners: fabiand
Branches: f19 f20
InitialCC:
Comment 17 Gwyn Ciesla 2013-08-19 08:00:18 EDT
Git done (by process-git-requests).
Comment 18 Fabian Deutsch 2013-08-19 08:07:02 EDT
Thanks. Closing this.

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