Bug 813842 - Review Request: glfw , A cross-platform multimedia library
Review Request: glfw , A cross-platform multimedia library
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Brendan Jones
Dan Mashal
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-04-18 10:55 EDT by MERCIER Jonathan
Modified: 2012-10-23 15:39 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-10-23 15:39:22 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
pwouters: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)
updated spec file (3.84 KB, text/plain)
2012-07-17 16:27 EDT, Paul Wouters
no flags Details
updates the "gilfw.patch" file from the original 2.7.5 version (6.66 KB, patch)
2012-07-17 16:28 EDT, Paul Wouters
no flags Details | Diff

  None (edit)
Description MERCIER Jonathan 2012-04-18 10:55:14 EDT
http://bioinfornatics.fedorapeople.org/glfw-2.7.5-1.fc16.src.rpm
http://bioinfornatics.fedorapeople.org/glfw.spec

$ rpmlint ~/rpmbuild/RPMS/x86_64/glfw-*
glfw.x86_64: W: spelling-error Summary(fr_FR) platform -> plateforme
glfw.x86_64: W: spelling-error Summary(fr_FR) multimedia -> multimédia
glfw.x86_64: W: spelling-error Summary(fr_FR) library -> libraire
glfw.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.x86_64: W: spelling-error %description -l fr_FR ouvere -> ouvre, ouverte, ouvert
glfw.x86_64: W: spelling-error %description -l fr_FR multi -> mufti, multiple
glfw.x86_64: W: spelling-error %description -l fr_FR dévelopement -> développement
glfw.x86_64: W: spelling-error %description -l fr_FR threads -> thraces
glfw-debuginfo.x86_64: E: debuginfo-without-sources
glfw-devel.x86_64: W: spelling-error Summary(fr_FR) developing -> développante
glfw-devel.x86_64: W: no-documentation
glfw-devel.x86_64: W: dangling-relative-symlink /usr/lib64/libglfw.so.2.7 libglfw.so.2
glfw-devel.x86_64: W: dangling-relative-symlink /usr/lib64/libglfw.so.2.7.5 libglfw.so.2
glfw-geany-tags.x86_64: W: spelling-error Summary(en_US) autocompletion -> auto completion, auto-completion, completion
glfw-geany-tags.x86_64: W: spelling-error Summary(fr) enable -> ensable, entable, tenable
glfw-geany-tags.x86_64: W: spelling-error Summary(fr) autocompletion -> autoconsommation, automutilation
glfw-geany-tags.x86_64: W: spelling-error %description -l en_US autocompletion -> auto completion, auto-completion, completion
glfw-geany-tags.x86_64: W: spelling-error %description -l fr l'autocompletion -> autoconsommation
glfw-geany-tags.x86_64: W: spelling-error %description -l fr derelict -> dentelière
glfw-geany-tags.x86_64: W: no-documentation
glfw-geany-tags.x86_64: E: script-without-shebang /usr/share/geany/tags/glfw.c.tags
glfw-static.x86_64: W: spelling-error Summary(fr_FR) developing -> développante
glfw-static.x86_64: W: no-documentation
5 packages and 0 specfiles checked; 2 errors, 21 warnings.
Comment 1 Michael Scherer 2012-04-29 05:06:46 EDT
Hi,

- any reason to ship the static library ?
http://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries_2

- And I think the french translation should be improved, cause this does look like it was done by a automated system, and there is still some weird sentences.

- The first patch should be commented ( ie, say what it does, how it was sent upstream, and have a better name than %name.patch )

- I am not sure that 

%{_libdir}/libglfw.so.2.7
%{_libdir}/libglfw.so.2.7.5

belong to -devel, likely more to the main rpm

- this is likely wrong :
Requires:       GLFW3-devel

- there is uneeded BuildRequires ( like gcc, make )
BuildRequires:  gcc, make, libX11, mesa-libGL, mesa-libGLU

and this is better for patch review to have them on 1 line per BuildRequires ( so you can see at the first sight if something is added or removed )

I also think you need to add -devel, not regular library. ( and they are added to the -devel, but that's IMHO counter intuitive )
Comment 2 MERCIER Jonathan 2012-04-29 07:46:50 EDT
I have try to build without libX11, mesa-libGL, mesa-libGLU and rpm do not found the dependencies
Curently i provides static lib as shared lib build is broken this will be silve with next major release (v3)
I will fx other issue.
Comment 3 Martin Preisler 2012-06-14 08:06:11 EDT
libglfw has already been in Fedora, it was orphaned and deprecated in Fedora 16. The reason for the deprecation is maintainer inactivity and it definitely should be revived.

Original review: #469972

I would be interested in this package and would like to review it. Are you member of the "packagers" group?

Informal review for now:
- remove gcc and make build requires, they are not necessary
- geany tags? seems wasteful to me though I see few packages have them
- description of the static subpackage is wrong, though I would just remove the static subpackage completely and only provide the dynamic libs
- shared objects in devel subpackage?!

I would just remove the .a static archive, install shared objects in the main package, install headers in the devel package and doc in a doc package. The old spec file from the orphaned package might be worth looking into, just a version bump from there might be enough.

Related bugs: #674380, #754658

I am also adding pwouters to the CC list since he also seems to be needing libglew, hope he doesn't mind :-)
Comment 4 Paul Wouters 2012-07-15 20:31:07 EDT
Any news on this?

I'd like to review (and sponsor if neccessary) but I agree that we should not ship the static library.
Comment 5 Michael Schwendt 2012-07-17 12:14:33 EDT
> BuildRequires:  gcc, make, libX11, mesa-libGL, mesa-libGLU
>
> I have try to build without libX11, mesa-libGL, mesa-libGLU and rpm
> do not found the dependencies

What does that mean? What failure and when? Please explain. It's unusual that your BuildRequires do not contain "libX11-devel mesa-libGL-devel mesa-libGLU-devel" instead. 


> %package        devel
> BuildRequires:  libX11-devel, mesa-libGL-devel, mesa-libGLU-devel

There they are! That's not a good place where to put BuildRequires. For optional (!) subpackages, it may be suitable to mention the additional BR near to the subpackage section of the spec file. But for essential subpackages such as -devel that only adds confusion. As could be seen during this review. ;)


> Curently i provides static lib as shared lib build is broken

How is it broken? Why do you include the shared lib in the package if you know it's broken?


> Requires:       %{name} =  %{version}-%{release}

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


> %build
> make %{?_smp_mflags} x11 
>
> ...
>
> %install
> make %{?_smp_mflags} x11-dist-install PREFIX=/usr LIBDIR=%{_lib}
> DESTDIR=%{buildroot} CFLAGS="$RPM_OPT_FLAGS"

That asks for a closer look. Why do you add CFLAGS for "install" but not "build". Nothing ought to be compiled anymore in the %install section.
Comment 6 MERCIER Jonathan 2012-07-17 13:39:31 EDT
thanks i will works soon on this (this week)
Comment 7 Paul Wouters 2012-07-17 16:25:54 EDT
I've fixed up parts of it, thpugh not entirely happy of the fixes. Their handling and overriding of CFLAGS is a mess.

* Tue Jul 17 2012 Paul Wouters <pwouters@redhat.com> - 2.7.6-1
- Updated to 2.7.6
- Link explicitely against -lrt
- Renamed patch, use version macro to create softlink
- hardcode compiler optargs in updated patch for configure/make
  (this fixes the debuginfo package)
Comment 8 Paul Wouters 2012-07-17 16:27:05 EDT
Created attachment 598740 [details]
updated spec file

Updates spec file
Comment 9 Paul Wouters 2012-07-17 16:28:31 EDT
Created attachment 598741 [details]
updates the "gilfw.patch" file from the original 2.7.5 version

updated patch for soname, adds optflags so we create proper libraries with debug symbols for the ebuginfo package
Comment 10 Paul Wouters 2012-07-17 16:58:07 EDT
(my updated did not incorporate Michael's suggestions yet. This spec file still needs lots of love.
Comment 11 MERCIER Jonathan 2012-07-23 07:13:59 EDT
Really big thanks Paul for your work 


Below is an artefact to mine glfw3.spec sorry
Requires:       GLFW3-devel

>> %build
>> make %{?_smp_mflags} x11 
>>
>> ...
>>
>> %install
>> make %{?_smp_mflags} x11-dist-install PREFIX=/usr LIBDIR=%{_lib}
>> DESTDIR=%{buildroot} CFLAGS="$RPM_OPT_FLAGS"
>
> That asks for a closer look. Why do you add CFLAGS for "install" but not "build". Nothing ought to be compiled anymore in the %install section.

yes i agree it was an error, fixed



>> Requires:       %{name} =  %{version}-%{release}

> https://fedoraproject.org/wiki/Packaging:Guidelines#Requiring_Base_Package

Fixed

> I would just remove the static subpackage completely and only provide the dynamic libs
Static subpackage removed

Curently i got a littlke build problem
../internal.h:92:22: fatal error: platform.h: No such file or directory


I looking to fix it

just to see what is new:
- http://bioinfornatics.fedorapeople.org/glfw-2.7.6-2.fc17.src.rpm
- http://bioinfornatics.fedorapeople.org/glfw-2.7.6-soname-cflags.patch
- http://bioinfornatics.fedorapeople.org/glfw.spec
Comment 12 Paul Wouters 2012-07-23 10:28:52 EDT
Looks like the CFLAGS override problem. Did you apply my updated patch listed in the bug?
Comment 13 MERCIER Jonathan 2012-08-11 14:13:42 EDT
spec: http://bioinfornatics.fedorapeople.org/glfw.spec
srpms: http://bioinfornatics.fedorapeople.org/glfw-3.0-2.fc17.src.rpm

$ rpmlint ~/rpmbuild/SPECS/glfw.spec 
/home/builder/rpmbuild/SPECS/glfw.spec: W: invalid-url Source0: glfw-20120810git2f095cc.tar.xz
0 packages and 1 specfiles checked; 0 errors, 1 warnings.


$ rpmlint ~/rpmbuild/SRPMS/glfw-3.0-2.fc17.src.rpm 
glfw.src: W: spelling-error Summary(fr) multi -> mufti, multiple
glfw.src: W: spelling-error Summary(fr_FR) multi -> mufti, multiple
glfw.src: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.src: W: spelling-error %description -l fr_FR multi -> mufti, multiple
glfw.src: W: invalid-url Source0: glfw-20120810git2f095cc.tar.xz
1 packages and 0 specfiles checked; 0 errors, 5 warnings.


$ rpmlint ~/rpmbuild/RPMS/x86_64/glfw-*
glfw.x86_64: W: spelling-error Summary(fr) multi -> mufti, multiple
glfw.x86_64: W: spelling-error Summary(fr_FR) multi -> mufti, multiple
glfw.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.x86_64: W: spelling-error %description -l fr_FR multi -> mufti, multiple
glfw-devel.x86_64: W: no-documentation
3 packages and 0 specfiles checked; 0 errors, 5 warnings.
Comment 14 MERCIER Jonathan 2012-08-13 08:14:26 EDT
fix : Requiring_Base_Package
SPEC: http://bioinfornatics.fedorapeople.org/glfw.spec
sRPM: http://bioinfornatics.fedorapeople.org/glfw-3.0-4.fc17.src.rpm
koji scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4383713


$ find ~/rpmbuild/SPECS/ ~/rpmbuild/SRPMS ~/rpmbuild/RPMS -type f  -iname "*glfw*"
/home/builder/rpmbuild/SPECS/glfw.spec
/home/builder/rpmbuild/SRPMS/glfw-3.0-4.fc17.src.rpm
/home/builder/rpmbuild/RPMS/x86_64/glfw-devel-3.0-4.fc17.x86_64.rpm
/home/builder/rpmbuild/RPMS/x86_64/glfw-3.0-4.fc17.x86_64.rpm
/home/builder/rpmbuild/RPMS/x86_64/glfw-debuginfo-3.0-4.fc17.x86_64.rpm

$ find ~/rpmbuild/SPECS/ ~/rpmbuild/SRPMS ~/rpmbuild/RPMS -type f  -iname "*glfw*" | xargs rpmlint 
/home/builder/rpmbuild/SPECS/glfw.spec: W: invalid-url Source0: glfw-20120812gita9ed5b1.tar.xz
glfw.src: W: spelling-error Summary(fr) multi -> mufti, multiple
glfw.src: W: spelling-error Summary(fr_FR) multi -> mufti, multiple
glfw.src: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.src: W: spelling-error %description -l fr_FR multi -> mufti, multiple
glfw.src: W: invalid-url Source0: glfw-20120812gita9ed5b1.tar.xz
glfw-devel.x86_64: W: no-documentation
glfw.x86_64: W: spelling-error Summary(fr) multi -> mufti, multiple
glfw.x86_64: W: spelling-error Summary(fr_FR) multi -> mufti, multiple
glfw.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.x86_64: W: spelling-error %description -l fr_FR multi -> mufti, multiple
4 packages and 1 specfiles checked; 0 errors, 11 warnings.
Comment 15 Paul Wouters 2012-09-21 00:46:53 EDT
Mostly a few small things that need fixing and I'll approve it.

Although one thing I would really like to see for this package is a working compile with %{optflags} But since we have packages that are broken because of this missing package, I don't want it to be a blocker now. Put please look into it at the next update.

Package Review
==============

Key:
- = N/A
x = Pass
! = Fail
? = Not evaluated



==== C/C++ ====
[x]: MUST Header files in -devel subpackage, if present.
[x]: MUST ldconfig called in %post and %postun if required.
[x]: MUST Package does not contain any libtool archives (.la)
[ ]: MUST Package does not contain kernel modules.
[ ]: MUST Package contains no static executables.
[x]: MUST Rpath absent or only used for internal libs.
[x]: MUST Development (unversioned) .so files in -devel subpackage, if
     present.


==== Generic ====
[x]: EXTRA Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: EXTRA Spec file according to URL is the same as in SRPM.
[x]: MUST Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: MUST Package successfully compiles and builds into binary rpms on at
     least one supported primary architecture.
[!]: MUST %build honors applicable compiler flags or justifies otherwise.
     make is not using %{optflags} and fails to build when added.
[!]: MUST All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
     Note: These BR are not needed: gcc make
[x]: MUST Package contains no bundled libraries.
[x]: MUST Changelog in prescribed format.
[x]: MUST Sources contain only permissible code or content.
[x]: MUST Each %files section contains %defattr if rpm < 4.4
     Note: Note: defattr macros not found. They would be needed for EPEL5
[x]: MUST Macros in Summary, %description expandable at SRPM build time.
[ ]: MUST Package contains desktop file if it is a GUI application.
[x]: MUST Development files must be in a -devel package
[!]: MUST Package requires other packages for directories it uses.
     Note: missing Requires: xorg-x11-proto-devel
[ ]: MUST Package uses nothing in %doc for runtime.
[x]: MUST Package is not known to require ExcludeArch.
[x]: MUST Permissions on files are set properly.
[x]: MUST Package does not contain duplicates in %files.
[x]: MUST Fully versioned dependency in subpackages, if present.
[ ]: MUST Package complies to the Packaging Guidelines
[x]: MUST Spec file lacks Packager, Vendor, PreReq tags.
[x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
     Note: rm -rf would be needed if support for EPEL5 is required
[ ]: MUST Large documentation files are in a -doc subpackage, if required.
[x]: MUST If (and only if) the source package includes the text of the
     license(s) in its own file, then that file, containing the text of the
     license(s) for the package is included in %doc.
[x]: MUST License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "MIT/X11 (BSD like)", "*No copyright* Public domain", "BSD (2 clause)",
     "zlib/libpng" For detailed output of licensecheck see file:
     /vol/home/paul/813842-glfw/licensecheck.txt
     Paul: zlib is the predominant one, so good for license tag.
[x]: MUST License file installed when any subpackage combination is installed.
[!]: MUST Package consistently uses macro is (instead of hard-coded directory
     names).
     "/usr" is used instead of %{_prefix}
[x]: MUST Package is named using only allowed ascii characters.
[x]: MUST Package is named according to the Package Naming Guidelines.
[x]: MUST Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[x]: MUST Package obeys FHS, except libexecdir and /usr/target.
[ ]: MUST If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[ ]: MUST Package must own all directories that it creates.
[x]: MUST Package does not own files or directories owned by other packages.
[x]: MUST Package installs properly.
[x]: MUST Package is not relocatable.
[!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5)
     Note: Only applicable for EL-5
[!]: MUST Requires correct, justified where necessary.
     Note: gcc and make should be removed
[x]: MUST Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: MUST Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: MUST Spec file is legible and written in American English.
[x]: MUST Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[ ]: MUST Package contains systemd file(s) if in need.
[x]: MUST File names are valid UTF-8.
[x]: MUST Useful -debuginfo package or justification otherwise.
[x]: SHOULD Reviewer should test that the package builds in mock.
[x]: SHOULD Buildroot is not present
     Note: Unless packager wants to package for EPEL5 this is fine
[x]: SHOULD Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
     Note: Clean would be needed if support for EPEL5 is required
[ ]: SHOULD If the source package does not include license text(s) as a
     separate file from upstream, the packager SHOULD query upstream to
     include it.
[x]: SHOULD Dist tag is present.
[x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin,
     /usr/sbin.
[ ]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[ ]: SHOULD Package functions as described.
[x]: SHOULD Latest version is packaged.
[x]: SHOULD Package does not include license text files separate from
     upstream.
[x]: SHOULD The placement of pkgconfig(.pc) files are correct.
[ ]: SHOULD Scriptlets must be sane, if used.
[x]: SHOULD SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[x]: SHOULD SourceX / PatchY prefixed with %{name}.
[x]: SHOULD SourceX is a working URL.
[x]: SHOULD Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: SHOULD Package should compile and build into binary rpms on all supported
     architectures.
[ ]: SHOULD %check is present and all tests pass.
[ ]: SHOULD Packages should try to preserve timestamps of original installed
     files.
[x]: SHOULD Spec use %global instead of %define.
Issues:
[!]: MUST All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
     Note: These BR are not needed: gcc make
See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
[!]: MUST Package requires pkgconfig, if .pc files are present. (EPEL5)
     Note: Only applicable for EL-5
See: http://fedoraproject.org/wiki/EPEL/GuidelinesAndPolicies#EL5

Rpmlint
-------
Checking: glfw-3.0-4.fc17.x86_64.rpm
          glfw-devel-3.0-4.fc17.x86_64.rpm
          glfw-debuginfo-3.0-4.fc17.x86_64.rpm
          glfw-3.0-4.fc17.src.rpm
glfw.x86_64: I: enchant-dictionary-not-found fr
glfw.x86_64: I: enchant-dictionary-not-found fr_FR
glfw.x86_64: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw-devel.x86_64: W: no-documentation
glfw.src: W: spelling-error %description -l en_US multi -> mulch, mufti
glfw.src: W: invalid-url Source0: glfw-20120812gita9ed5b1.tar.xz
4 packages and 0 specfiles checked; 0 errors, 4 warnings.

Rpmlint (installed packages)
----------------------------
# rpmlint glfw-devel
glfw-devel.x86_64: I: enchant-dictionary-not-found fr
glfw-devel.x86_64: I: enchant-dictionary-not-found fr_FR
glfw-devel.x86_64: W: no-documentation
1 packages and 0 specfiles checked; 0 errors, 1 warnings.
# echo 'rpmlint-done:'

Requires
--------
glfw-3.0-4.fc17.x86_64.rpm (rpmlib, GLIBC filtered):

    /sbin/ldconfig
    libGL.so.1()(64bit)
    libX11.so.6()(64bit)
    libXxf86vm.so.1()(64bit)
    libc.so.6()(64bit)
    libm.so.6()(64bit)
    librt.so.1()(64bit)
    rtld(GNU_HASH)
glfw-devel-3.0-4.fc17.x86_64.rpm (rpmlib, GLIBC filtered):

    /usr/bin/pkg-config
    glfw(x86-64) = 3.0-4.fc17
    libglfw.so.3()(64bit)
    pkgconfig(gl)
    pkgconfig(x11)
    pkgconfig(xxf86vm)

glfw-debuginfo-3.0-4.fc17.x86_64.rpm (rpmlib, GLIBC filtered):


Provides
--------
glfw-3.0-4.fc17.x86_64.rpm:

    glfw = 3.0-4.fc17
    glfw(x86-64) = 3.0-4.fc17
    libglfw.so.3()(64bit)
glfw-devel-3.0-4.fc17.x86_64.rpm:

    glfw-devel = 3.0-4.fc17
    glfw-devel(x86-64) = 3.0-4.fc17
    pkgconfig(glfw3) = 3.0.0

glfw-debuginfo-3.0-4.fc17.x86_64.rpm:

    glfw-debuginfo = 3.0-4.fc17
    glfw-debuginfo(x86-64) = 3.0-4.fc17

MD5-sum check
-------------


Generated by fedora-review 0.2.2 (9f8c0e5) last change: 2012-08-09
Command line :/bin/fedora-review -b 813842
External plugins:
Comment 16 MERCIER Jonathan 2012-09-21 02:44:37 EDT
I have use this: %cmake
then CFLAGS are set correctly 
-------------------------------
 rpm --eval %cmake

  CFLAGS="${CFLAGS:--O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4  -m64 -mtune=generic}" ; export CFLAGS ; 
  CXXFLAGS="${CXXFLAGS:--O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4  -m64 -mtune=generic}" ; export CXXFLAGS ; 
  FFLAGS="${FFLAGS:--O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4  -m64 -mtune=generic -I/usr/lib64/gfortran/modules}" ; export FFLAGS ; 
  LDFLAGS="${LDFLAGS:--Wl,-z,relro }" ; export LDFLAGS ; 
  /usr/bin/cmake \
        -DCMAKE_VERBOSE_MAKEFILE=ON \
        -DCMAKE_INSTALL_PREFIX:PATH=/usr \
        -DINCLUDE_INSTALL_DIR:PATH=/usr/include \
        -DLIB_INSTALL_DIR:PATH=/usr/lib64 \
        -DSYSCONF_INSTALL_DIR:PATH=/etc \
        -DSHARE_INSTALL_PREFIX:PATH=/usr/share \
%if "lib64" == "lib64" 
        -DLIB_SUFFIX=64 \
%endif 
        -DBUILD_SHARED_LIBS:BOOL=ON
-------------------------------
Comment 18 Paul Wouters 2012-09-21 12:12:47 EDT
Thanks for clarifying the compiler flag issue.


Can you change

%cmake -DCMAKE_INSTALL_PREFIX=/usr .

and

PREFIX=/usr

to use %{_prefix} instead of /usr?

Requires: xorg-x11-proto-devel is still missing - it owns /usr/include/GL which is used by glfw-devel

With these two changes, APPROVED

Note you might want to remove this (debug?) line:

ls -l  --color=auto %{buildroot}%{_libdir}/*
Comment 19 Paul Wouters 2012-09-21 12:29:07 EDT
I missed it also needs a Require: (not just Buildrequire) geany because it is installing files in /usr/share/geany
Comment 21 Paul Wouters 2012-09-23 18:17:39 EDT
Is this a pre-release of 3.0? As I don't see tar balls for the 3.0 version?
If so, the version shule be 3.0-0.6-1 ?

Other then that ,as said it is approved now, so you can request the CVS flag
Comment 22 MERCIER Jonathan 2012-09-23 20:06:45 EDT
using http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Snapshot_packages snapshot format is ok ?

%global     snapdate         20120812
%global     glfw_revision    a9ed5b1
%global     alphatag         %{snapdate}git%{glfw_revision}
...
Release:        6.%{alphatag}%
Comment 23 Paul Wouters 2012-09-24 11:59:40 EDT
not if 3.0 is a prerelease. You must make sure that 3.0-1 will be "newer" then any of these pre-release tags. but currently 3.0-1 would be older then 3.0-6.%{alphatag}

so use:

Release:  0.6.%{alphatag}
Comment 24 MERCIER Jonathan 2012-09-26 05:55:44 EDT

Spec: http://bioinfornatics.fedorapeople.org/glfw.spec
SRPMS : http://bioinfornatics.fedorapeople.org/glfw-3.0-0.7.20120812gita9ed5b1.fc17.src.rpm 

New Package SCM Request
=======================
Package Name: glfw
Short Description: A cross-platform multimedia library
Owners: bioinfornatics
Branches: f17 f18
InitialCC: bioinfornatics
Comment 25 Gwyn Ciesla 2012-09-26 06:15:22 EDT
Git done (by process-git-requests).

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