Bug 229419

Summary: Review Request: glew - The OpenGL Extension Wrangler Library
Product: [Fedora] Fedora Reporter: Bruno Postle <bruno>
Component: Package ReviewAssignee: Nobody's working on this, feel free to take it <nobody>
Status: CLOSED NOTABUG QA Contact: Fedora Package Reviews List <fedora-package-review>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: hdegoede, kwizart, sindrepb
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2007-08-12 18:14:34 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:
Attachments:
Description Flags
Patch to make Makefile use DESTDIR none

Description Bruno Postle 2007-02-20 22:06:22 UTC
Spec URL: http://bugbear.blackfish.org.uk/~bruno/apt/SPECS/glew.spec
SRPM URL: <http://bugbear.blackfish.org.uk/~bruno/apt/fedora/linux/5/x86_64/SRPMS.panorama/glew-1.3.5-2.fc5.src.rpm
Description: The goal of the OpenGL Extension Wrangler Library (GLEW) is to assist C/C++
OpenGL developers with two tedious tasks: initializing and using extensions
and writing portable applications. GLEW provides an efficient run-time
mechanism to determine whether a certain extension is supported by the
driver or not. OpenGL core and extension functionality is exposed via a
single header file. GLEW currently supports a variety of platforms and
operating systems, including Windows, Linux, Darwin, Irix, and Solaris.

Note: I'm submitting this as it is a dependency of enblend which I hope to submit later.

Note: this library has four licences including BSD and GPL.  The others appear to be ok but I can't say for sure:

http://glew.sourceforge.net/sgi.txt
http://glew.sourceforge.net/glx.txt

Comment 1 Bruno Postle 2007-02-26 22:41:08 UTC
I guess I'll have to close this one as the sgi license isn't free software
according to the FSF:

    The "SGI Free Software License B", although its name says "free",
    is not a Free Software License.  It has three major problems.  1.
    It restricts its patent license to unmodified versions of the
    software.  2. It terminates if your use of the software infringes
    copyrights or patents which are not SGI's.  This is problematic
    because it gives SGI grounds to sue you even when you have done
    nothing to them.  3.  The license requires you to inform SGI of
    legal problems with the software.  This violates your privacy
    rights, and can conflict with professional confidentiality
    requirements, such as attorney-client privilege.

Comment 2 Bruno Postle 2007-03-14 09:27:11 UTC
I'd like to reopen this review request.  Apparently the package doesn't actually
include code under the SGI license, it just includes the SGI license file for
some reason.  

glew is in debian, this is their summary of the copyright status:

http://packages.debian.org/changelogs/pool/main/g/glew/glew_1.3.4-5/copyright

Comment 3 Johan Cwiklinski 2007-03-15 10:47:55 UTC
According to Milan Ikits (glew's main developper) :

"Note that each file includes the corresponding licenses:

glew.h: SGI FSL + BSD
glxew.h: GLX + BSD
wglew.h: BSD
glew.c: BSD
auto/bin/*: GPL 2"

Found this thread on glew's mailing list :
https://sourceforge.net/mailarchive/forum.php?thread_id=31176341&forum_id=43720

Comment 4 Bruno Postle 2007-03-15 11:37:30 UTC
So does this mean glew can or can't be included in fedora?  The debian package
is essentially unmodified from upstream and the debian maintainers seem to be
clear that the package itself doesn't include any SGI licensed code:

  Parts of the public interface are *generated* from components
  distributed by Silicon Graphics, Inc. available under the conditions
  quoted below.  None of these components are included in the source
  package and are available only thru CVS.

Note that I am packaging this as it is a dependency of enblend.  I have a patch
that removes glew support from enblend without any great loss of functionality,
so should I take this path instead?

Comment 5 Bruno Postle 2007-03-20 16:54:09 UTC
Clearing fedora-review '-' flag as glew is in debian

Comment 6 Sindre Pedersen Bjørdal 2007-05-31 13:38:18 UTC
Created attachment 155814 [details]
Patch to make Makefile use DESTDIR

Comment 7 Sindre Pedersen Bjørdal 2007-05-31 14:06:24 UTC
Not a review, some points: 

Don't use %makeinstall, use patch attached above and make install 
DESTDIR=$RPM_BUILD_ROOT

New release 1.4.0 is out, update your package

License should be changed to "Assorted licenses, see
%{_docdir}/%{name}-%{version}/copyright_summary" and copyright_summary needs to
be created, using the debian copyright info as a starting point makes sense.

Maybe creating a -doc subpackage makes sense, the source tarball has a doc dir
with html documentation that can be installed.

Comment 8 Bruno Postle 2007-06-04 21:16:37 UTC
(In reply to comment #7)
>> 
> Don't use %makeinstall, use patch attached above and make install 
> DESTDIR=$RPM_BUILD_ROOT

Thanks, I've included the patch

> New release 1.4.0 is out, update your package

Done.

> License should be changed to "Assorted licenses, see
> %{_docdir}/%{name}-%{version}/copyright_summary" and copyright_summary needs to
> be created, using the debian copyright info as a starting point makes sense.

Done, I've included the debian summary, though rpmlint complains about the
non-standard license text

> Maybe creating a -doc subpackage makes sense, the source tarball has a doc dir
> with html documentation that can be installed.

Makes sense, here it is rebuilt for fc6:

http://bugbear.blackfish.org.uk/~bruno/apt/fedora/linux/6/x86_64/SRPMS.panorama/glew-1.4.0-1.fc6.src.rpm
http://bugbear.blackfish.org.uk/~bruno/apt/SPECS/glew.spec
http://bugbear.blackfish.org.uk/~bruno/apt/SPECS/glew-1.4.0-makefile.patch
http://bugbear.blackfish.org.uk/~bruno/apt/SPECS/glew-copyright_summary

Comment 9 Sindre Pedersen Bjørdal 2007-06-06 16:09:55 UTC
*** Bug 241847 has been marked as a duplicate of this bug. ***

Comment 10 Nicolas Chauvet (kwizart) 2007-06-14 11:27:50 UTC
Hi, here some comments:

- Provides: libglew-devel = %{version}-%{release}
Why do you need this ?

- CFLAGS="-Iinclude $RPM_OPT_FLAGS"
This will replace -Iinclude indeed - so you may need to have this in %prep (to
prevent CFLAGS replacement)
sed -i -e 's|$(POPT)|%{optflags}|' Makefile

- Prefers to uses this at %prep (if possible for the doc generated before make)
sed -i 's/\r//' README.txt doc/* 
But i wonder if this is still necessaray (at least for the README file)

- doc sub-package isn't really big, you may consider to merge it with the -devel
sub-package...Follow your thoughts about this...

- make should uses %{?_smp_mflags} (it seems to work)

- rpmlint glew on installed package show:
W: glew unused-direct-shlib-dependency /usr/lib64/libGLEW.so.1.4.0
/usr/lib64/libXmu.so.6
W: glew unused-direct-shlib-dependency /usr/lib64/libGLEW.so.1.4.0
/usr/lib64/libXi.so.6
W: glew unused-direct-shlib-dependency /usr/lib64/libGLEW.so.1.4.0
/usr/lib64/libGLU.so.1
W: glew unused-direct-shlib-dependency /usr/lib64/libGLEW.so.1.4.0
/usr/lib64/libXext.so.6
W: glew unused-direct-shlib-dependency /usr/lib64/libGLEW.so.1.4.0
/usr/lib64/libX11.so.6

You may need to have :
BuildRequires:  libXmu-devel libXi-devel mesa-libGLU-devel libXext-devel
 but it seems not to solve the issue (see libtool ?! )
You may report this upstream...

- Shouldn't we block FE-LEGAL for the sgi problem or is this clear enought for
you ? rpmlint complain about W: glew invalid-license Assorted licenses,

- cosmetic consideration 
rpmdev-newspec create a skeleton spec file that makes spec really looks better.
I would suggest to use this. Of course this is a minor problem...


Comment 11 Bruno Postle 2007-07-09 21:28:00 UTC
(In reply to comment #10)
> 
> - Provides: libglew-devel = %{version}-%{release}
> Why do you need this ?

No good reason I can think of, gone.

> - CFLAGS="-Iinclude $RPM_OPT_FLAGS"
> This will replace -Iinclude indeed - so you may need to have this in %prep (to
> prevent CFLAGS replacement)
> sed -i -e 's|$(POPT)|%{optflags}|' Makefile

I can't remember how the CFLAGS got in there in the first place, your fix seems
to work, applied.

> - Prefer to use this at %prep (if possible for the doc generated before make)
> sed -i 's/\r//' README.txt doc/* 

Heh, I just advised the same to someone else in a different review.  It isn't
necessary anymore, gone.

> - doc sub-package isn't really big, you may consider to merge it with the -devel

I'm not sure what the criteria is for splitting or not.  As HTML documentation,
it really ought to require a web-browser..  Left as separate for now.

> - make should uses %{?_smp_mflags} (it seems to work)

Done.

> W: glew unused-direct-shlib-dependency

Don't know what to do about this, I added the extra BuildRequires anyway.

> - Shouldn't we block FE-LEGAL for the sgi problem or is this clear enought for
> you ?

It seems that if it is ok for debian then it ought to be ok for fedora.  I'll
block FE-LEGAL if it is necessary to bring it to attention?

> rpmlint complain about W: glew invalid-license Assorted licenses,

See previous comment, according to the debian document the license would be
something like "BSD + GPL"

Updated package:

http://bugbear.blackfish.org.uk/~bruno/apt/fedora/linux/7/x86_64/SRPMS.panorama/glew-1.4.0-2.fc7.src.rpm
http://bugbear.blackfish.org.uk/~bruno/apt/SPECS/glew.spec


Comment 12 Hans de Goede 2007-08-07 18:55:19 UTC
GLEW is not ok for Fedora as is, this has been discussed with Tom "spot"
Callaway, who is the authority on this several times. So yes blocking FE-legal
would be a very good idea, except that the answer is no. GLEW is not acceptable.

But ... I got here, because Tibbs pointed to this review after I submitted glew
myself, see bug 251191 . The version of glew I submitted however has got several
encumbered parts removed / replaced, and has been approved legal wise by Spot.

Which brings us to the question how to move on from here, we could use this
version and merge in the necessary changes from mine, or start with my version,
either is fine by me.

About the GPL/BSD license questions, see the README I've added to my package,
the GPL only applies to the scripts used to autogenerate some of the code. The
code itself and thus the GLEW lib + headers is BSD.


Comment 13 Nicolas Chauvet (kwizart) 2007-08-11 23:36:41 UTC
ping Bruno!

My point of view is to review the Hans's version...
I will do some testing, to see if it works with the package i'm preparing that
BR glew-devel

Comment 14 Bruno Postle 2007-08-12 18:14:34 UTC
[Sorry, I've been away at a conference]

Yes I'm happy for Hans to take this package, I'll mark it as a duplicate of
251191   if that is ok.

Comment 15 Hans de Goede 2007-08-12 19:15:56 UTC
Thanks! Marking at as a dup is fine, but the current resolution of notabug also
is ok.