Bug 480373 - Review Request: cilk - Language for multithreaded parallel programming.
Summary: Review Request: cilk - Language for multithreaded parallel programming.
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Ian Weller
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-01-16 18:31 UTC by Adam Miller
Modified: 2009-09-24 19:43 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-02-23 23:16:45 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Adam Miller 2009-01-16 18:31:17 UTC
Spec URL: http://maxamillion.fedorapeople.org/cilk.spec
SRPM URL: http://maxamillion.fedorapeople.org/cilk-5.4.6-1.src.rpm

Description:
Cilk (pronounced 'silk') is a language for multithreaded parallel 
programming based on ANSI C. Cilk is designed for general-purpose parallel 
programming, but it is especially effective for exploiting dynamic, highly 
asynchronous parallelism, which can be difficult to write in data-parallel 
or message-passing style.

Comment 1 Ian Weller 2009-01-17 03:11:23 UTC
I'll review this.

Comment 2 Ian Weller 2009-01-17 03:26:45 UTC
Things I see right now:

License field in spec matches: Fail
 -- The license is GPLv2+: license text in main.c and other files reads "or an
    other version"

Package compiles and builds on at least one arch: Fail
 -- See these Koji logs.
    http://koji.fedoraproject.org/koji/getfile?taskID=1060419&name=build.log
    "What is this? -pipe" -- near end of log.

Comment 3 Adam Miller 2009-01-20 05:21:56 UTC
Spec URL: http://maxamillion.fedorapeople.org/cilk.spec
SRPM URL: http://maxamillion.fedorapeople.org/cilk-5.4.6-2.src.rpm

Fixed the license field and prematurely filed the request without running in mock, the %optflags are slapped into %configure and the '-pipe' is what is causing the failure in the package build.

Comment 4 Ian Weller 2009-01-25 05:43:45 UTC
- %dir isn't necessary in %files. you can just list the directory and it will
  automatically add all the files under it too (so get rid of the two lines
  under the %dir lines while you're at it)

- rpmlint is very loud:
cilk.src:23: W: configure-without-libdir-spec
cilk.src:51: W: macro-in-%changelog optflags
cilk.src: W: summary-ended-with-dot Language for multithreaded parallel programming.
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.g.p.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/cilk/libcilkrt0gp.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.p.so
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/gcc-builtin.h
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/cilk/libcilkrt0g.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.g.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.so
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk-sysdep.h
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.g.so
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk-conf.h
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk-cilk2c.h
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk-lib.h
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/cilk/libcilkrt0.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/cilk/libcilkrt0p.a
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.g.p.so
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk-cilk2c-pre.h
cilk.i386: W: devel-file-in-non-devel-package /usr/lib/libcilk.p.a
cilk.i386: W: devel-file-in-non-devel-package /usr/include/cilk/cilk.h
cilk.i386: W: summary-ended-with-dot Language for multithreaded parallel programming.
cilk.i386: W: shared-lib-calls-exit /usr/lib/libcilk.g.so.0.0.0 exit
cilk.i386: W: shared-lib-calls-exit /usr/lib/libcilk.p.so.0.0.0 exit
cilk.i386: W: shared-lib-calls-exit /usr/lib/libcilk.g.p.so.0.0.0 exit
cilk.i386: W: shared-lib-calls-exit /usr/lib/libcilk.so.0.0.0 exit
3 packages and 0 specfiles checked; 0 errors, 27 warnings.

- why did you replace %configure?

- you can use
    %configure CFLAGS="%(echo "%optflags" | sed -e 's/-pipe//' | sed -e 's/--param=ssp-buffer-size=4//')"
  instead of getting rid of the compiler flags altogether. This keeps cilkclocal
  happy and keeps most of the compiler flags.

Comment 5 Ian Weller 2009-01-25 05:44:56 UTC
- you need to add a %check section because "make check" is available

- please add "%{?_smp_mflags}" to the end of "make"
  https://fedoraproject.org/wiki/Packaging:Guidelines#Parallel_make

Comment 6 Adam Miller 2009-01-28 14:26:18 UTC
Spec URL: http://maxamillion.fedorapeople.org/cilk.spec
SRPM URL: http://maxamillion.fedorapeople.org/cilk-5.4.6-3.src.rpm

Added the %check, fixed the CFLAGS, also added the %{?_smp_mflags}

rpmlint still throws warning about devel-file-in-non-devel-package but i'm not entirely sure that's a valid warning as the libs are specific to the app.

Comment 7 Ian Weller 2009-01-28 14:52:29 UTC
rpmlint still throws warning about devel-file-in-non-devel-package because you need a -devel subpackage for those files. See the packaging guidelines.

Comment 8 Ian Weller 2009-02-15 19:56:21 UTC
Ping?

Comment 9 Adam Miller 2009-02-18 20:44:54 UTC
Very sorry, I have gotten a little bogged down with work, school, and trying to wrap up some other fedora related business. I will reference the guidelines and post back as soon as I am able.

Comment 10 Adam Miller 2009-02-23 23:16:45 UTC
The project I was packaging this up for has been shut down. Closing Review Request, thank you for your time during the review. Very sorry for consuming unnecessary amounts of time.


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