Spec URL: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec SRPM URL: http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-1.fc17.src.rpm Description: libmatewnck is Window Navigator Construction Kit, i.e. a library to use for writing pagers and taskslists and stuff.
my suggestion: Summary: Window Navigator Construction Kit Name: libmatewnck Version: 1.4.0 Release: 1%{?dist} URL: http://pub.mate-desktop.org Source0: http://pub.mate-desktop.org/releases/1.4/%{name}-%{version}.tar.xz License: LGPLv2+ Group: System Environment/Libraries Requires: startup-notification BuildRequires: glib2-devel BuildRequires: gtk2-devel BuildRequires: pango-devel BuildRequires: startup-notification-devel BuildRequires: libXt-devel BuildRequires: libXres-devel BuildRequires: gettext BuildRequires: intltool BuildRequires: gobject-introspection-devel BuildRequires: mate-common BuildRequires: gtk-doc BuildRequires: cairo-gobject-devel %description libmatewnck (pronounced "libmatewink") is used to implement pagers, tasklists, and other such things. It allows applications to monitor information about open windows, workspaces, their names/icons, and so forth. %package devel Summary: Libraries and headers for libmatewnck Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep %setup -q NOCONFIGURE=1 ./autogen.sh %build %configure \ --disable-static \ --enable-introspection \ --enable-gtk-doc \ --enable-startup-notification make %{?_smp_mflags} %install make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' %find_lang %{name} %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files -f %{name}.lang %doc AUTHORS COPYING README NEWS %{_bindir}/matewnck-urgency-monitor %{_bindir}/matewnckprop %{_libdir}/lib*.so.* %{_libdir}/girepository-1.0/Matewnck-1.0.typelib %files devel %{_libdir}/lib*.so %{_libdir}/pkgconfig/* %{_includedir}/* %{_datadir}/gir-1.0/Matewnck-1.0.gir %doc %{_datadir}/gtk-doc %changelog * Mon Jul 09 2012 Wolfgang Ulbrich <chat-to-me> - 1.4.0-1 - update to 1.4.0 Only the licence information isn't checked. It's from libwnck.
Similar stuff needs work here as with mate-corba and https://bugzilla.redhat.com/show_bug.cgi?id=841003#c10 , may be worth taking the advice in comment #1
Ready for review: SPEC: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec SRPM: http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-1.fc17.src.rpm Description: libmatewnck is Window Navigator Construction Kit, i.e. a library to use for writing pagers and task lists and stuff. $ rpmlint ../../SRPMS/libmatewnck-1.4.0-1.fc17.src.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. $ rpmlint ../SPECS/libmatewnck.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. $ rpmlint ../RPMS/x86_64/libmatewnck-1.4.0-1.fc17.x86_64.rpm libmatewnck.x86_64: W: no-manual-page-for-binary matewnckprop libmatewnck.x86_64: W: no-manual-page-for-binary matewnck-urgency-monitor 1 packages and 0 specfiles checked; 0 errors, 2 warnings. f18: http://koji.fedoraproject.org/koji/taskinfo?taskID=4328202 f17: http://koji.fedoraproject.org/koji/taskinfo?taskID=4328214 f16 doesnt build (I guess due to older version of libtool): http://koji.fedoraproject.org/koji/taskinfo?taskID=4328233
a few suggestions :) 1. You have double entries of BuildRequires ! 2. A empty row before %changelog would be nice. 3. We need only this as BuildRequires BuildRequires: glib2-devel BuildRequires: gtk2-devel BuildRequires: startup-notification-devel BuildRequires: libXres-devel BuildRequires: intltool BuildRequires: gobject-introspection-devel BuildRequires: mate-common BuildRequires: gtk-doc BuildRequires: cairo-gobject-devel For XRes support in configure results we need libXres-devel, not libX11-devel 4. Reminder: no need of mate-common in Requires 5. startup-notification needs to be in Requires. 6. IHMO no need for gtk-doc in Requires, not shure let's wait what Rex said. In result of 4/5/6 Requires: startup-notification 7. Why configure flag --enable-gtk-doc-html ? I use --enable-gtk-doc 8. I remove unecessary .la files with that line find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' in %install section after make install......... 9. IHMO gobject-introspection files needs to be split in main and devel Package, not shure. %{_datadir}/gir-1.0/Matewnck-1.0.gir in -devel %files -f %{name}.lang %doc AUTHORS COPYING README NEWS %{_bindir}/matewnck-urgency-monitor %{_bindir}/matewnckprop %{_libdir}/lib*.so.* %{_libdir}/girepository-1.0/Matewnck-1.0.typelib %files devel %{_libdir}/lib*.so %{_libdir}/pkgconfig %{_includedir}/libmatewnck/libmatewnck %{_datadir}/gir-1.0/Matewnck-1.0.gir %doc %{_datadir}/gtk-doc
(In reply to comment #3) > f16 doesnt build (I guess due to older version of libtool): > http://koji.fedoraproject.org/koji/taskinfo?taskID=4328233 Looking at the build and root logs for the failed f16 build I note that libtool isn't even in the buildroot. You probably need to add buildrequires libtool to fix the build issue.
(In reply to comment #5) > (In reply to comment #3) > > > f16 doesnt build (I guess due to older version of libtool): > > http://koji.fedoraproject.org/koji/taskinfo?taskID=4328233 > > Looking at the build and root logs for the failed f16 build I note that > libtool isn't even in the buildroot. > You probably need to add buildrequires libtool to fix the build issue. This is because the wrong requires of mate-common-1.4.0-5.fc16 see https://bugzilla.redhat.com/show_bug.cgi?id=mate-common this is correct in mate-common-1.4.0-6.fc16 If mate-common-1.4.0-6.fc16 is in stable, the error will be gone.
(In reply to comment #6) > If mate-common-1.4.0-6.fc16 is in stable, the error will be gone. Agreed.
thx. will look at it shortly.
I'll try to tweak the spec file a bit. Stay tuned.
OK, here we go: SPEC URL: http://mariobl.fedorapeople.org/Review/SPECS/libmatewnck.spec Scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4340139
For my changed package, we just have to readd Requires: gtk-doc mate-common mate-corba because none of them seems to be picked up automatically: $ rpm -qpR ./libmatewnck-1*64.rpm /sbin/ldconfig /sbin/ldconfig libX11.so.6()(64bit) libatk-1.0.so.0()(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_2.7)(64bit) libcairo.so.2()(64bit) libfontconfig.so.1()(64bit) libfreetype.so.6()(64bit) libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libgio-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgtk-x11-2.0.so.0()(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libmatewnck.so.0()(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libpangoft2-1.0.so.0()(64bit) libstartup-notification-1.so.0()(64bit) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rtld(GNU_HASH) rpmlib(PayloadIsXz) <= 5.2-1
@ Mario this makes also no sense NOCONFIGURE=1 ./autogen.sh --enable-startup-notification --enable-gtk-doc-html better %prep %setup -q NOCONFIGURE=1 ./autogen.sh --enable-startup-notification --enable-gtk-doc-html %build %configure --enable-startup-notification --enable-gtk-doc-html make %{?_smp_mflags} with (NOCONFIGURE=1) autogen.sh doesn't configure
(In reply to comment #10) > OK, here we go: > > SPEC URL: http://mariobl.fedorapeople.org/Review/SPECS/libmatewnck.spec > > Scratch build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4340139 You need to delete .a and .la files in %install and remove them from the %files section.
(In reply to comment #12) > @ Mario > this makes also no sense > > NOCONFIGURE=1 ./autogen.sh --enable-startup-notification > --enable-gtk-doc-html > > better > > %prep > %setup -q > NOCONFIGURE=1 ./autogen.sh --enable-startup-notification > --enable-gtk-doc-html > > %build > %configure --enable-startup-notification --enable-gtk-doc-html > make %{?_smp_mflags} > > with (NOCONFIGURE=1) autogen.sh doesn't configure If it did configure during the autogen command the the options would be lost by running configure again in the %build section
(In reply to comment #14) > If it did configure during the autogen command the the options would be lost > by running configure again in the %build section Means, we could drop the autoconf options, couldn't we? Well, configure will actually run twice, but apart from double work for the Koji server, we have no disadvantages. If a package needs autogen (BTW, which usually happens for VCS checkouts and similar stuff, not for released and versioned software) I use it as follows: %prep %setup -q %build ./autogen.sh %configure --enable-startup-notification --enable-gtk-doc-html
sorry, my fault i meant this %prep %setup -q NOCONFIGURE=1 ./autogen.sh %build %configure --enable-startup-notification --enable-gtk-doc-html make %{?_smp_mflags} Is this correct Leigh?
Updated. Please review. Spec URL: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec SRPM URL: http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-2.fc17.src.rpm Description: libmatewnck is Window Navigator Construction Kit, i.e. a library to use for writing pagers and taskslists and stuff. $ rpmlint libmatewnck.spec 0 packages and 1 specfiles checked; 0 errors, 0 warnings. $ rpmlint libmatewnck-1.4.0-2.fc17.x86_64.rpm libmatewnck.x86_64: W: no-manual-page-for-binary matewnckprop libmatewnck.x86_64: W: no-manual-page-for-binary matewnck-urgency-monitor 1 packages and 0 specfiles checked; 0 errors, 2 warnings. $ rpmlint libmatewnck-devel-1.4.0-2.fc17.x86_64.rpm libmatewnck-devel.x86_64: W: no-dependency-on libmatewnck/libmatewnck-libs/liblibmatewnck libmatewnck-devel.x86_64: W: spelling-error %description -l en_US ibmatewnck libmatewnck-devel.x86_64: W: no-documentation 1 packages and 0 specfiles checked; 0 errors, 3 warnings. $ rpmlint libmatewnck-1.4.0-2.fc17.src.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. F17 koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4344270 F18 koji build: http://koji.fedoraproject.org/koji/taskinfo?taskID=4344273
(In reply to comment #16) > sorry, my fault > > i meant this > %prep > %setup -q > NOCONFIGURE=1 ./autogen.sh > > %build > %configure --enable-startup-notification --enable-gtk-doc-html > make %{?_smp_mflags} > > Is this correct Leigh? It looks ok, I normally put the noconfigure line in %build
You actually don't even need the %configure flags with the proper build packages in the spec file.
(In reply to comment #17) > Updated. Please review. > > Spec URL: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec > SRPM URL: > http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-2.fc17.src. > rpm > Description: libmatewnck is Window Navigator Construction Kit, i.e. a > library to use for writing pagers and taskslists and stuff. > > $ rpmlint libmatewnck.spec > 0 packages and 1 specfiles checked; 0 errors, 0 warnings. > > $ rpmlint libmatewnck-1.4.0-2.fc17.x86_64.rpm > libmatewnck.x86_64: W: no-manual-page-for-binary matewnckprop > libmatewnck.x86_64: W: no-manual-page-for-binary matewnck-urgency-monitor > 1 packages and 0 specfiles checked; 0 errors, 2 warnings. > $ rpmlint libmatewnck-devel-1.4.0-2.fc17.x86_64.rpm > libmatewnck-devel.x86_64: W: no-dependency-on > libmatewnck/libmatewnck-libs/liblibmatewnck > libmatewnck-devel.x86_64: W: spelling-error %description -l en_US ibmatewnck > libmatewnck-devel.x86_64: W: no-documentation > 1 packages and 0 specfiles checked; 0 errors, 3 warnings. > > $ rpmlint libmatewnck-1.4.0-2.fc17.src.rpm > 1 packages and 0 specfiles checked; 0 errors, 0 warnings. > > > F17 koji build: > http://koji.fedoraproject.org/koji/taskinfo?taskID=4344270 > > F18 koji build: > http://koji.fedoraproject.org/koji/taskinfo?taskID=4344273 Please rebase your spec (it's terrible) i.e throw it away and use the one in comment#1.
(In reply to comment #19) > You actually don't even need the %configure flags with the proper build > packages in the spec file. I don't know where to start with that comment. IT'S NEEDED BY ALL PACKAGES IN FEDORA THAT USE ./configure The %configure macro sets these needed options $ rpm -E %configure 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; ./configure --build=x86_64-unknown-linux-gnu --host=x86_64-unknown-linux-gnu \ --program-prefix= \ --disable-dependency-tracking \ --prefix=/usr \ --exec-prefix=/usr \ --bindir=/usr/bin \ --sbindir=/usr/sbin \ --sysconfdir=/etc \ --datadir=/usr/share \ --includedir=/usr/include \ --libdir=/usr/lib64 \ --libexecdir=/usr/libexec \ --localstatedir=/var \ --sharedstatedir=/var/lib \ --mandir=/usr/share/man \ --infodir=/usr/share/info
the provided .spec does use %configure, I *think* dan's wondering why you were suggesting using the following non-default configure flags: --enable-startup-notification --enable-gtk-doc-html
(In reply to comment #20) > (In reply to comment #17) > > Updated. Please review. > > > > Spec URL: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec > > SRPM URL: > > http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-2.fc17.src. > > rpm > > Description: libmatewnck is Window Navigator Construction Kit, i.e. a > > library to use for writing pagers and taskslists and stuff. > > > > $ rpmlint libmatewnck.spec > > 0 packages and 1 specfiles checked; 0 errors, 0 warnings. > > > > $ rpmlint libmatewnck-1.4.0-2.fc17.x86_64.rpm > > libmatewnck.x86_64: W: no-manual-page-for-binary matewnckprop > > libmatewnck.x86_64: W: no-manual-page-for-binary matewnck-urgency-monitor > > 1 packages and 0 specfiles checked; 0 errors, 2 warnings. > > $ rpmlint libmatewnck-devel-1.4.0-2.fc17.x86_64.rpm > > libmatewnck-devel.x86_64: W: no-dependency-on > > libmatewnck/libmatewnck-libs/liblibmatewnck > > libmatewnck-devel.x86_64: W: spelling-error %description -l en_US ibmatewnck > > libmatewnck-devel.x86_64: W: no-documentation > > 1 packages and 0 specfiles checked; 0 errors, 3 warnings. > > > > $ rpmlint libmatewnck-1.4.0-2.fc17.src.rpm > > 1 packages and 0 specfiles checked; 0 errors, 0 warnings. > > > > > > F17 koji build: > > http://koji.fedoraproject.org/koji/taskinfo?taskID=4344270 > > > > F18 koji build: > > http://koji.fedoraproject.org/koji/taskinfo?taskID=4344273 > > Please rebase your spec (it's terrible) i.e throw it away and use the one > in comment#1. Ok, here's a list of what's wrong 1. %{_datadir}/gir-1.0/Matewnck-1.0.gir belongs in -devel 2. delete all .a & .la files in %install add find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' 3. don't specify un-needed explicit requires Requires: mate-common You may need to add Requires: startup-notification Please check this out. 4. missing requires on -devel package, add Requires: %{name} = %{version}-%{release} 5. Move this to just before the %files section (cosmetic only) %post -p /sbin/ldconfig %postun -p /sbin/ldconfig 6. preserve the timestamps (recommend) make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
(In reply to comment #22) > the provided .spec does use %configure, I *think* dan's wondering why you > were suggesting using the following non-default configure flags: > --enable-startup-notification --enable-gtk-doc-html Without looking at the source I don't know if these are default configure options, if there are the flags aren't needed.
Hi Dan. @ using extra configure flags --enable-startup-notification I talk with Stefano-k (mate dev) today. They use this flags already for their debian package. DEB_CONFIGURE_EXTRA_FLAGS += --enable-gtk-doc \ --enable-startup-notification \ --enable-introspection see https://github.com/mate-desktop/debian-packages/blob/master/libmatewnck/debian/rules Quote: startup-notification is when an application is starting and you see it on tasklist in a different way This means if you do not use this flag, mate-desktop going more minimalistic. I prefer to make it more comfortable for a user. Using --enable-introspection is IHMO also a good choice. Anyway, your package.......your decision.
@Wolfgang, Thanks for your helpful comments. Please review the build.log. This is already done without needing these flags. @Leigh, I will look in to the .la files.
libmatewnck 1.4.0 ================= prefix: /usr exec_prefix: /usr libdir: /usr/lib64 bindir: /usr/bin sbindir: /usr/sbin sysconfdir: /etc localstatedir: /var datadir: /usr/share source code location: . compiler: gcc cflags: -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic Maintainer mode: no Use *_DISABLE_DEPRECATED: no Startup notification support: no XRes support: yes Build introspection support: yes Build gtk-doc documentation: no For some odd reason it didn't pick up some of the BuildRequires on Koji. Let me double check that.
(In reply to comment #26) > @Wolfgang, > > Thanks for your helpful comments. > > Please review the build.log. This is already done without needing these > flags. > You right in case of --enable-introspection flag. (Build introspection support: yes) is because you have BuildRequires: gobject-introspection-devel But you didn't build with Startup notification support. Why?
(In reply to comment #26) > @Leigh, > > I will look in to the .la files. There's nothing to look at, if these files are in you package it will be an instant review failure. http://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries_2 In the case of your package there is no reason to include them, if you do your package will be rejected.
This review is blocked and can't proceed till mate-common is in the repos or buildroot overrides are in place.
(In reply to comment #30) > This review is blocked and can't proceed till mate-common is in the repos or > buildroot overrides are in place. p.s don't remove the block as it's valid!!!
Hi Leigh, mate-common-1.4.0-5.fc16 and mate-common-1.4.0-5.fc17 are in the stable repos. Also, mate-common-1.4.0-8.fc16 and mate-common-1.4.0-8.fc17 were submitted as updates today. Can you please test them and leave karma accordingly? Thanks, Dan
Updated spec and SRPM: http://vicodan.fedorapeople.org/matespec/libmatewnck.spec http://vicodan.fedorapeople.org/materpms/srpms/libmatewnck-1.4.0-3.fc17.src.rpm
thanks. naming: ok license: ok sources: ok 38e6298db3cc14eb1a5610049f801b7b libmatewnck-1.4.0.tar.xz scriptlets: ok macros: ok looks like a winner, APPROVED
New Package SCM Request ======================= Package Name: libmatewnck Short Description: Window navigator constructor kit for MATE Desktop Owners: vicodan raveit65 rdieter Branches: f16 f17 f18 InitialCC:
Git done (by process-git-requests).
libmatewnck-1.4.0-3.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/libmatewnck-1.4.0-3.fc16
libmatewnck-1.4.0-3.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/libmatewnck-1.4.0-3.fc17
libmatewnck-1.4.0-3.fc16 has been pushed to the Fedora 16 testing repository.
libmatewnck-1.4.0-3.fc16 has been pushed to the Fedora 16 stable repository.
libmatewnck-1.4.0-3.fc17 has been pushed to the Fedora 17 stable repository.