Bug 670345
Summary: | Review Request: cx_freeze - create executable from python scripts | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Patrice FERLET <metal3d> |
Component: | Package Review | Assignee: | Pierre-YvesChibon <pingou> |
Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | rawhide | CC: | fedora-package-review, notting, pingou |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2011-06-14 14:24:33 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: | |||
Bug Depends On: | |||
Bug Blocks: | 201449 |
Description
Patrice FERLET
2011-01-17 23:26:21 UTC
I wonder if I can move util.so to %{_libdir}/cxfreeze and make a symlink to /usr/lib64/python2.7/site-packages/cx_Freeze/ PS: my FAS is metal3d Quickly reading the spec file: ># sitelib for noarch packages, sitearch for others (remove the unneeded one) >%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from >distutils.sysconfig import get_python_lib; print(get_python_lib())")} >%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from >distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} Choose one of the other, but one should be removed > Name: cxfreeze Why did you choose this name ? I see cx_freeze more often on the website. Please see http://fedoraproject.org/wiki/Packaging:NamingGuidelines > License: Python hm, seeing this http://cx-freeze.sourceforge.net/LICENSE.txt I think it might need to be reviewed to be sure the license is valid. > Source0: cx_Freeze-%{version}.tar.gz This is not correct, please see http://fedoraproject.org/wiki/Packaging/SourceURL > Requires: python >= 2.3 gcc Are you sure the gcc should be explicitly required ? > #add shebang > for f in ${RPM_BUILD_ROOT}/%{python_sitearch}/cx_Freeze/initscripts/* Why do you add shebang to file which will never be executed ? > #not relevant > rm -rf ${RPM_BUILD_ROOT}/%{python_sitearch}/cx_Freeze/samples Why is it not relevant ? Couldn't it be provided as doc ? There are several comments on your spec which you could clean. For name, ok... In fact I didn't see any package with "_" in name... that's why I did it. For license, that's exactly why I ask a review. It seems that cx_freeze use a derivated python license. gcc is needed. cx_freeze creates an executable by making linkage with gcc. If you've got not gcc, cx_freeze won't create executable I add shebang because rpmlint insult me :) sample aren't very usefull, not documented... that's right I can set a -doc package with this files into. But I have to move them to documentation directory, right ? I do modifications http://koji.fedoraproject.org/koji/taskinfo?taskID=2730674 Spec URL: http://www.metal3d.org/rpms/cxFreeze.spec SRPM URL: http://www.metal3d.org/rpms/cxfreeze-4.2.2-1.fc14.src.rpm Modifications done Koji test ok :) rpmlint: [patachou@patrice-laptop rpmbuild]$ rpmlint /home/patachou/rpmbuild/RPMS/x86_64/cx_freeze-4.2.2-1.fc14.x86_64.rpm cx_freeze.x86_64: W: spelling-error %description -l en_US cx -> xx, cc, c cx_freeze.x86_64: W: private-shared-object-provides /usr/lib64/python2.7/site-packages/cx_Freeze/util.so util.so()(64bit) cx_freeze.x86_64: W: no-documentation cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/ConsoleKeepPath3.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/ConsoleSetLibPath.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/Console.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/SharedLib.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/SharedLibSource.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/ConsoleKeepPath.py cx_freeze.x86_64: E: script-without-shebang /usr/lib64/python2.7/site-packages/cx_Freeze/initscripts/Console3.py cx_freeze.x86_64: W: no-manual-page-for-binary cxfreeze 1 packages and 0 specfiles checked; 7 errors, 4 warnings. [patachou@patrice-laptop rpmbuild]$ rpmlint /home/patachou/rpmbuild/RPMS/noarch/cx_freeze-doc-4.2.2-1.fc14.noarch.rpm cx_freeze-doc.noarch: W: spelling-error Summary(en_US) cx -> xx, cc, c cx_freeze-doc.noarch: W: spelling-error %description -l en_US cx -> xx, cc, c cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/advanced/advanced_2.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/advanced/modules/testfreeze_1.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/advanced/modules/testfreeze_2.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/service/Config.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/service/setup.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/advanced/advanced_1.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/service/ServiceHandler.py cx_freeze-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/cx_freeze/samples/advanced/setup.py 1 packages and 0 specfiles checked; 0 errors, 10 warnings. Ah you still have to clean the output of rpmlint, you might want to look at rpmlint -i for hints. For the documentation, you can just "flag" the folder in the %files section as being doc. Source URL changed, sorry if you didn't see my last modification :) PS: name is very badly choosen by author... cx_Freeze isn't the right name used in sourceforge urls (it uses cx-freeze, lowercase, minus and not underscore...) Pierre-YvesChibon: ok, I take a look at this time. For shebangs I really don't know how to do without my "for f in ${RPM_BUILD_ROOT}/%{python_sitearch}/cx_Freeze/initscripts/*" loop. I have setted my doc flag, already see how to make multiple packages with one spec :) For end of line errors, I do now a sed replacement, working: [patachou@patrice-laptop rpmbuild]$ rpmlint -i /home/patachou/rpmbuild/RPMS/noarch/cx_freeze-doc-4.2.2-1.fc14.noarch.rpm cx_freeze-doc.noarch: W: spelling-error Summary(en_US) cx -> xx, cc, c The value of this tag appears to be misspelled. Please double-check. cx_freeze-doc.noarch: W: spelling-error %description -l en_US cx -> xx, cc, c The value of this tag appears to be misspelled. Please double-check. 1 packages and 0 specfiles checked; 0 errors, 2 warnings. FYI, it is normally good practice to increase the release for each change and populate the changelog accordingly I don't think the sample are worth a -doc subpackage. But you can flag the documentation as being %doc which allow when using rpm to install the software without the documentation. Don't forget to adjust the name of the spec to the name you choose Ok, I will do it in next hours. thank you for all these tips, I try to do my best :) Spec URL: http://www.metal3d.org/rpms/cx_freeze.spec SRPM URL: http://www.metal3d.org/rpms/cx_freeze-4.2.2-1.fc14.src.rpm I did what you told me to do. rpmint still beat me with needed shebangs... Can I uncomment my workaround ? You might want to have a look at: http://fedoraproject.org/wiki/PackageMaintainers/Packaging_Tricks Also beware that some people attached importance to keeping to time stamp. Spec URL: http://www.metal3d.org/rpms/cx_freeze.spec SRPM URL: http://www.metal3d.org/rpms/cx_freeze-4.2.2-3.fc14.src.rpm Should be nice now: rpmlint /home/patachou/rpmbuild/RPMS/x86_64/cx_freeze-4.2.2-3.fc14.x86_64.rpm cx_freeze.x86_64: W: spelling-error %description -l en_US cx -> xx, cc, c cx_freeze.x86_64: W: private-shared-object-provides /usr/lib64/python2.7/site-packages/cx_Freeze/util.so util.so()(64bit) cx_freeze.x86_64: W: no-manual-page-for-binary cxfreeze 1 packages and 0 specfiles checked; 0 errors, 3 warnings. changed description to 75 caracters long as possible Spec URL: http://www.metal3d.org/rpms/cx_freeze.spec SRPM URL: http://www.metal3d.org/rpms/cx_freeze-4.2.2-4.fc14.src.rpm (In reply to comment #12) > cx_freeze.x86_64: W: private-shared-object-provides > /usr/lib64/python2.7/site-packages/cx_Freeze/util.so util.so()(64bit) You might want to look into http://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering#Arch-specific_extensions_to_scripting_languages Done, thanks :) Spec URL: http://www.metal3d.org/rpms/cx_freeze.spec SRPM URL: http://www.metal3d.org/rpms/cx_freeze-4.2.2-5.fc14.src.rpm Excuse me to ping this post, but... is anyone looking at my package ? Hi, I have recently been approved sponsors, so I am willing to sponsor you. This package looks in a decent shape to me but before I do the formal review and approve it I would like to see you submit one or two more packages and do a couple of informal review on already submitted packages. Please attached the link to the new review request and the link to the informal review you do to this ticket. Thanks. Ok, I will do that. Thanks ping ? ping ? I have not heard from you for 3 months, I am therefore closing this ticket. If you want to finish the review, feel free to re-open it! |