Spec URL: http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2.spec SRPM URL: http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-1.leof6.src.rpm Description: An easy-to-use telnet client mainly targets BBS users. PCMan X is a newly developed GPL'd version of PCMan, a full-featured famous BBS client formerly designed for MS Windows only. It aimed to be an easy-to-use yet full-featured telnet client facilitating BBS browsing with the ability to process double-byte characters.
I am not an official reviewer, so consider this a prereview. At a first glance the spec file looks fine, however it doesn't build in mock. The error is: /var/tmp/rpm-tmp.55138: line 31: desktop-file-install: command not found so I think you need to add desktop-file-utils to your BuildRequires line.
(In reply to comment #1) > I am not an official reviewer, so consider this a prereview. > > At a first glance the spec file looks fine, however it doesn't build in mock. > > The error is: > > /var/tmp/rpm-tmp.55138: line 31: desktop-file-install: command not found > > so I think you need to add desktop-file-utils to your BuildRequires line. Thanks. Done. http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-2.leof6.src.rpm
Well, several issues from very quick check. (0.3.5-2) * Your own desktop misses Icon item. Why not use original desktop file included in tarball? Note: for original desktop, the Icon description is enough with ----------------------------------------- Icon=pcmanx.png ----------------------------------------- * Still fails on mockbuild ------------------------------------------ + /usr/lib/rpm/redhat/find-lang.sh /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild pcmanx No translations found for pcmanx in /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild error: Bad exit status from /var/tmp/rpm-tmp.40758 (%install) ------------------------------------------ * Debuginfo rpm issue ---------------------------------------------- make install-strip DESTDIR=$RPM_BUILD_ROOT ----------------------------------------------- Well, don't strip binaries. Debuginfo rpm becomes useless. * Timestamps Please keep timestamps for installed text files. Usually -------------------------------------------------- make install INSTALL="install -c -p" --------------------------------------------------- works. * Desktop category Original desktop file includes --------------------------------------------------- Application ---------------------------------------------------- category. This is deprecated and this should be removed. ---------------------------------------------------- --add-category X-Fedora --add-category X-Red-Hat-Extra --add-category Applications ---------------------------------------------------- All these are not deprecated and should be removed ---------------------------------------------------- --add-category Internet ---------------------------------------------------- This is forbidden. Perhaps you meant "Network"? * scriptlets ---------------------------------------------------- update-desktop-database > /dev/null 2>&1 || : ---------------------------------------------------- This is not needed because pcmanx desktop does not contain mime types description. * file entry ------------------------------------- %{_libdir}/* -------------------------------------- This is wrong because this includes %{_libdir}/debug, which should appear only in debuginfo rpm.
(In reply to comment #3) > Well, several issues from very quick check. > (0.3.5-2) > > * Your own desktop misses Icon item. Why not use original > desktop file included in tarball? > Note: for original desktop, the Icon description is enough > with > ----------------------------------------- > Icon=pcmanx.png > ----------------------------------------- The original .desktop contains two Icon entries. No it's not missing. See line: Icon=pcmanx Should I change it to pcmanx.png? > > * Still fails on mockbuild Where can I use this? or do I have to setup my own? > ------------------------------------------ > + /usr/lib/rpm/redhat/find-lang.sh > /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild pcmanx > No translations found for pcmanx in /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild > error: Bad exit status from /var/tmp/rpm-tmp.40758 (%install) > ------------------------------------------ Any ideas why it failed? AFAIK, there are thse files: /usr/share/locale/zh_CN/LC_MESSAGES/pcmanx.mo /usr/share/locale/zh_TW/LC_MESSAGES/pcmanx.mo > > * Debuginfo rpm issue > ---------------------------------------------- > make install-strip DESTDIR=$RPM_BUILD_ROOT > ----------------------------------------------- > Well, don't strip binaries. Debuginfo rpm becomes useless. > > * Timestamps > Please keep timestamps for installed text files. Usually > -------------------------------------------------- > make install INSTALL="install -c -p" > --------------------------------------------------- > works. > > * Desktop category > Original desktop file includes > --------------------------------------------------- > Application > ---------------------------------------------------- > category. This is deprecated and this should be removed. Removed from desktop file. > ---------------------------------------------------- > --add-category X-Fedora > --add-category X-Red-Hat-Extra > --add-category Applications > ---------------------------------------------------- > All these are not deprecated and should be removed I can't understand this. Should be removed or not? I keep them for now. > ---------------------------------------------------- > --add-category Internet > ---------------------------------------------------- > This is forbidden. Perhaps you meant "Network"? fixed. > * scriptlets > ---------------------------------------------------- > update-desktop-database > /dev/null 2>&1 || : > ---------------------------------------------------- > This is not needed because pcmanx desktop does not contain > mime types description. fixed. > > * file entry > ------------------------------------- > %{_libdir}/* > -------------------------------------- > This is wrong because this includes %{_libdir}/debug, > which should appear only in debuginfo rpm. fixed. The new src.rpm is here: http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-3.leof6.src.rpm
(In reply to comment #4) > No it's not missing. See line: Icon=pcmanx > Should I change it to pcmanx.png? Ah, okay. You may leave this as "Icon=pcmanx" > > > > > * Still fails on mockbuild > Where can I use this? or do I have to setup my own? Well, first install "mock" rpm (from Fedora Extras) and please check the manual of mock (if you use the default configuration, you can do the mockbuild by "mock ?????.src.rpm") > > > ------------------------------------------ > > + /usr/lib/rpm/redhat/find-lang.sh > > /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild pcmanx > > No translations found for pcmanx in > /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild > > error: Bad exit status from /var/tmp/rpm-tmp.40758 (%install) > > ------------------------------------------ > > Any ideas why it failed? AFAIK, there are thse files: > > /usr/share/locale/zh_CN/LC_MESSAGES/pcmanx.mo > /usr/share/locale/zh_TW/LC_MESSAGES/pcmanx.mo For this package, creating these gettext .mo files needs gettext rpm. Please add "gettext" to BuildRequires. > > ---------------------------------------------------- > > --add-category X-Fedora > > --add-category X-Red-Hat-Extra > > --add-category Applications > > ---------------------------------------------------- > > All these are not deprecated and should be removed > > I can't understand this. Should be removed or not? Oops.. What I meant was "All these are now deprecated".... Please remove these..
(In reply to comment #5) > (In reply to comment #4) > > No it's not missing. See line: Icon=pcmanx > > Should I change it to pcmanx.png? > Ah, okay. You may leave this as "Icon=pcmanx" > > > > > > > > * Still fails on mockbuild > > Where can I use this? or do I have to setup my own? > > Well, first install "mock" rpm (from Fedora Extras) and > please check the manual of mock > (if you use the default configuration, you can do the > mockbuild by "mock ?????.src.rpm") > > > > > > ------------------------------------------ > > > + /usr/lib/rpm/redhat/find-lang.sh > > > /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild pcmanx > > > No translations found for pcmanx in > > /var/tmp/pcmanx-gtk2-0.3.5-2.fc7-root-mockbuild > > > error: Bad exit status from /var/tmp/rpm-tmp.40758 (%install) > > > ------------------------------------------ > > > > Any ideas why it failed? AFAIK, there are thse files: > > > > /usr/share/locale/zh_CN/LC_MESSAGES/pcmanx.mo > > /usr/share/locale/zh_TW/LC_MESSAGES/pcmanx.mo > > For this package, creating these gettext .mo files needs > gettext rpm. Please add "gettext" to BuildRequires. > > > > ---------------------------------------------------- > > > --add-category X-Fedora > > > --add-category X-Red-Hat-Extra > > > --add-category Applications > > > ---------------------------------------------------- > > > All these are not deprecated and should be removed > > > > I can't understand this. Should be removed or not? > Oops.. What I meant was "All these are now deprecated".... > Please remove these.. Seems all fixed. http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-4.fc6.src.rpm
Created attachment 145531 [details] gdb log of pcmanx Well, one issue and one _critical_ problem * Catetogory "X-Fedora" is not used now and please remove it. * On FC7 (rawhide 20070113), pcmanx always cause SEGV on startup. I attached a gdb log at the situation. I looked at the log, however, currently I cannot find out the cause. Would you contact with upstream? Note: On FC5, there is no segv.
(In reply to comment #7) > Created an attachment (id=145531) [edit] > gdb log of pcmanx > > Well, one issue and one _critical_ problem > * Catetogory "X-Fedora" is not used now and please > remove it. > > * On FC7 (rawhide 20070113), pcmanx always cause > SEGV on startup. > I attached a gdb log at the situation. > I looked at the log, however, currently I cannot find > out the cause. > Would you contact with upstream? > > Note: On FC5, there is no segv. Email sent out. I will put out a new src rpm once the seq fault fixed along with fixing the category problem.
Well, as a result of rawhide update: ----------------------------------- gtk2-2.10.8-1.fc7 glib2-2.12.9-1.fc7 ----------------------------------- segv on startup disappeared. Now I suspect that segv on startup I saw was due to gtk2 or glib2, not pcmanx-gtk2. Still, I found one more issue. When I: * remove wget (in fact, do "mv /usr/bin/wget /usr/bin/.wget") * launch pcmanx * try to update BBS list -- then at the probability of around 50%, pcmanx freezes. This is reproducible also on FC-5. This is (perhaps) due to around line 729-763 in src/mainframe.cpp. When "system(wget...)" exits immediately with failure, some race condition seems to happen. This may be avoided by adding "Requires: wget", however I think this is apparently a bug and I don't think leaving this as it is is good. Well, again would you report to upstream about this (and also report that startup segv was perhaps due to gtk2 or glib2)?
Still no response from upstream? If so, would you try svn version? From that I searched for net information: * startup segv occuring on gtk2-2.10.7 seems to be fixed in svn version * I just checked svn version and ChangeLog says: ---------------------------------------------------------- +2007-01-21 Shih-yuan Lee (FourDollars) <fourdollars> + + * configure.ac, + src/appconfig.cpp, + src/appconfig.h, + src/generalprefpage.cpp, + src/mainframe.cpp, + src/mainframe.h, + src/view/telnetview.cpp, + src/view/telnetview.h: disable the buggy "BBS List Update" and wget download by default. -------------------------------------------------------------
ping?
Again ping?
I am on vacation till 5 March.
ping again?
Dear Mamoru, I am alive but I am stuck with work, a lot of work with a new role as president of my College student union. I hope I will get around to make a new build next weekend. Best, Leo
I was able to build pcmanx from svn: + '[' x '!=' x ']' + aclocal-1.9 aclocal:configure.ac:12: warning: macro `AM_DISABLE_STATIC' not found in library aclocal:configure.ac:13: warning: macro `AM_PROG_LIBTOOL' not found in library aclocal:configure.ac:38: warning: macro `AM_GNU_GETTEXT' not found in library aclocal:configure.ac:39: warning: macro `AM_GNU_GETTEXT_VERSION' not found in library + autoheader + AUTOMAKE=automake-1.9 + libtoolize -c --automake ./autogen.sh: line 13: libtoolize: command not found + AUTOMAKE=automake-1.9 + intltoolize -c --automake --force ./autogen.sh: line 14: intltoolize: command not found + automake-1.9 --add-missing --copy --include-deps plugin/src/Makefile.am:17: library used but `RANLIB' is undefined plugin/src/Makefile.am:17: plugin/src/Makefile.am:17: The usual way to define `RANLIB' is to add `AC_PROG_RANLIB' plugin/src/Makefile.am:17: to `configure.ac' and run `autoconf' again. src/core/Makefile.am:3: Libtool library used but `LIBTOOL' is undefined src/core/Makefile.am:3: src/core/Makefile.am:3: The usual way to define `LIBTOOL' is to add `AC_PROG_LIBTOOL' src/core/Makefile.am:3: to `configure.ac' and run `aclocal' and `autoconf' again. + autoconf configure.ac:12: error: possibly undefined macro: AM_DISABLE_STATIC If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:13: error: possibly undefined macro: AM_PROG_LIBTOOL configure.ac:14: error: possibly undefined macro: AC_PROG_INTLTOOL configure.ac:38: error: possibly undefined macro: AM_GNU_GETTEXT configure.ac:39: error: possibly undefined macro: AM_GNU_GETTEXT_VERSION + cp -f /usr/share/automake-1.9/mkinstalldirs . + rm -rf autom4te.cache
Sorry, typo. I mean, I was not able to build pcmanx-gtk2 from svn.
Well * would you install gettext-devel in advance and retry? * For devel, automake is already 1.10. So would you try "autoreconf -fi" instead of using autogen.sh (also on FC-6)?
autoreconf -fi aclocal:configure.ac:12: warning: macro `AM_DISABLE_STATIC' not found in library aclocal:configure.ac:13: warning: macro `AM_PROG_LIBTOOL' not found in library configure.ac:12: error: possibly undefined macro: AM_DISABLE_STATIC If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:13: error: possibly undefined macro: AM_PROG_LIBTOOL configure.ac:14: error: possibly undefined macro: AC_PROG_INTLTOOL autoreconf: /usr/bin/autoconf failed with exit status: 1
Then next installing libtool?
Error left! What's next? autoreconf -fi configure.ac:14: error: possibly undefined macro: AC_PROG_INTLTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. autoreconf: /usr/bin/autoconf failed with exit status: 1
Then perhaps intltool.
Now it builds. http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2.spec http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-6.20070330svn.leof6.src.rpm http://www.srcf.ucam.org/~sl392/fedora/zod/pcmanx-gtk2-0.3.5-6.20070330svn.leof6.i386.rpm
( I would appreciate it if you would wait my review for 2-3 days... )
Well, this is svn version, right? I suppose svn version does not have configure, etc... So please * write in the spec file how you created this tarball as a comment like ------------------------------------------------ # The svn version tarball is created by the following command # $ svn ......... # $ tar ......... ------------------------------------------------ so that I can reproduce the tarball which you used. * write from autoreconf, .... in %prep stage and add appropriate BuildRequires.
Done! SRPM: http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-7.20070406svn.leof6.src.rpm SPEC: http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2.spec
Well, actually on rawhide automake is 1.10 and some other fixes are needed for rawhide. For me, the following works ------------------------------------------------ %prep %setup -q -n %{name} for f in `ls -d %{_datadir}/automake-1.* | sort -g -k 2 -t .` ; do automakever=`echo $f | sed -e 's|%{_datadir}/automake-||'` done eval %{__sed} -i.orig -e \'s\|-1\\\.9\|-$automakever\|\' autogen.sh %{__sed} -i -e 's|set -x|set -e -x|' autogen.sh touch config.rpath ./autogen.sh #autoreconf -fi ------------------------------------------------ Please check if the above also works for you. And.. I have not checked other things yet...
Well, for 7.svn20070406 * numbering - Usually for svn tarball, the revision number is used (at the time I checked svn version, the revision number was 336), while for cvs tarball, the date is used for tarball number. * autotool - Well, as noted above, currently * rawhide is automake 1.10 * automake 1.10 fails without config.rpath So the modification I wrote above was needed for rawhide. * Documentation - Please check if the following documents are needed. -------------------------------------------------- README --------------------------------------------------
(In reply to comment #29) > Well, for 7.svn20070406 > > * numbering > - Usually for svn tarball, the revision number is used > (at the time I checked svn version, the revision number > was 336), while for cvs tarball, the date is used for > tarball number. Done. > * autotool > - Well, as noted above, currently > * rawhide is automake 1.10 > * automake 1.10 fails without config.rpath > So the modification I wrote above was needed for > rawhide. Yes, it also builds on Fedora 6. > * Documentation > - Please check if the following documents are needed. > -------------------------------------------------- > README > -------------------------------------------------- I wonder what's the reason not to include README. http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2.spec http://www.srcf.ucam.org/~sl392/fedora/SRPMs/pcmanx-gtk2-0.3.5-8.336svn.leof6.src.rpm
Well, before checking srpm on comment 30: (In reply to comment #30) > (In reply to comment #29) > > * Documentation > > - Please check if the following documents are needed. > > -------------------------------------------------- > > README > > -------------------------------------------------- > > I wonder what's the reason not to include README. The reason I have a question for README is that this README file only explains the options of configure, so this is similar with what is usually written in INSTALL file and IMO this is needed for people who want to install this by themselves and not needed for people using rpm. How do you think?
(In reply to comment #31) > > I wonder what's the reason not to include README. > > The reason I have a question for README is that > this README file only explains the options of configure, > so this is similar with what is usually written in INSTALL > file and IMO this is needed for people who want to install > this by themselves and not needed for people using rpm. > > How do you think? I agree with you. Maybe we should ask upstream to rename the file. What do you think?
IMO while there is actually INSTALL file, the content of README file is also suitable to belong to INSTALL file.
Well, apart from README file, this package is okay. For now, just remove README file. ---------------------------------------------------- This package (pcmanx-gtk2) is APPROVED by me. ----------------------------------------------------
So what to do next?
Please follow: http://fedoraproject.org/wiki/PackageMaintainers/NewPackageProcess
I should have mentioned this earlier. I was stuck at step 8. http://fedoraproject.org/wiki/PackageMaintainers/CVSAdminProcedure (I am preparing for exams thus might be a little slow in reply).
Please follow "New Packages" process of the URL you referred to. That is: * Write *in this bug* new package CVS request as a comment according to the new package request template. * Set the fedora-cvs flag of this bug to ? * And wait until cvs admin switches fedora-cvs flag to +
New Package CVS Request ======================= Package Name: pcmanx-gtk2 Short Description: Telnet client designed for BBS browsing Owners: sdl.web Branches: FC-5 FC-6 InitialCC: sdl.web
Please don't put matching addresses as owner and intialCC. done
Build requested for all branches.
Failed on FC-5: Build logs may be found at http://buildsys.fedoraproject.org/logs/fedora-5-extras/31608-pcmanx-gtk2-0.3.5-9.336svn.fc5/
Build log says that compilar failed to find libdbus-glib.so . Fix this by adding: BuildRequires: dbus-devel on FC-5 (on higher branches this is not needed).
Still error http://buildsys.fedoraproject.org/logs/fedora-5-extras/31651-pcmanx-gtk2-0.3.5-10.336svn.fc5/
Yes, I saw. Now I am checking what is occuring by mockbuild.
Seems to be bug of libnotify-0.3. Header files seem to be unsafe for C++. On >= FC-6, libnotify is 0.4. Perhaps disabling libnotify support on FC-5 is the best for now. BTW: If you change the release number to -10, then you have to increase release number also on FC-devel and FC-6. Please make it sure that version-release number is always higher on higher branches. If you want to fix only on lower branches, you can tag release number as 9%{?dist}.1, for example. Check "Minor release bumps for old branches" of http://fedoraproject.org/wiki/Packaging/NamingGuidelines
What is your plan for FC-5 branch?
Can rename the package back to 9%{?dist}.x?
I have not tried that case, however you can just try.
Build succeeded in FC-5 http://buildsys.fedoraproject.org/logs/fedora-5-extras/32186-pcmanx-gtk2-0.3.5-9.336svn.fc5.1/
Okay. Closing as NEXTRELEASE.
Please unretire the devel branch and create f16 branch. Package Change Request ====================== Package Name: pcmanx-gtk2 New Branches: f16 Owners: cheeselee I have taken the f15 branch and made an update.
Git done (by process-git-requests).
Please unretire the devel branch.
Done, take it.