Spec URL: http://www.ftd4linux.nl/contrib/mingw32-curl.spec SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-curl-7.19.4-1.fc11.src.rpm Description: cURL is a tool for getting files from HTTP, FTP, FILE, LDAP, LDAPS, DICT, TELNET and TFTP servers, using any of the supported protocols. cURL is designed to work without user interaction or any kind of interactivity. cURL offers many useful capabilities, like proxy support, user authentication, FTP upload, HTTP post, and file transfer resume. This is the MinGW cross-compiled Windows library. Koji scratch build: none for now because mingw32-libidn and mingw32-libssh2 aren't in Fedora yet Approved MinGW packaging guidelines are here: http://fedoraproject.org/wiki/Packaging/MinGW
Taking for review. Eric, can you update it to the version of native Fedora curl package before I go on?
Sorry for the delay but here's an updated build: * Fri Dec 11 2009 Erik van Pienbroek <epienbro> - 7.19.7-1 - Update to 7.19.8 - Merged the patches of the native .spec file (7.19.7-8) - Use %global instead of %define - Automatically generate debuginfo subpackage Spec URL: http://www.ftd4linux.nl/contrib/mingw32-curl.spec SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-curl-7.19.7-1.fc12.src.rpm Scratch build (F-13): http://koji.fedoraproject.org/koji/taskinfo?taskID=1869501
Fedora review mingw32-curl-7.19.7-1.fc12.src.rpm 2009-12-11 + OK ! needs attention rpmlint says: mingw32-curl.noarch: W: spelling-error-in-summary en_US libcurl mingw32-curl.src: W: spelling-error-in-summary en_US libcurl mingw32-curl-debuginfo.noarch: W: spelling-error-in-summary en_US mingw mingw32-curl-debuginfo.noarch: W: spelling-error-in-description en_US mingw mingw32-curl-debuginfo.noarch: E: debuginfo-without-sources mingw32-curl-static.noarch: E: arch-independent-package-contains-binary-or-object /usr/i686-pc-mingw32/sys-root/mingw/lib/libcurl.a mingw32-curl-static.noarch: W: no-documentation 4 packages and 0 specfiles checked; 2 errors, 5 warnings. + rpmlint errors / warnings above are harmless and can be ignored. + Package is named according to the Fedora MinGW naming guidelines + Package follows the Fedora MinGW packaging guideliens + The stated license (MIT) is a Fedora approved license + The stated license is the same as the one for the corresponding native Fedora package + The package contains the license file (COPYING) + Spec file is written in American English + Spec file is legible + Upstream sources match sources in the srpm. md5sum: 26124caef7359de6338172abafa98dc0 curl-7.19.7.tar.lzma 26124caef7359de6338172abafa98dc0 Download/curl-7.19.7.tar.lzma + Package builds in koji n/a ExcludeArch bugs filed ! BuildRequires look sane, except that BR pkgconfig is probably not needed. n/a The spec file MUST handle locales properly + Packages does not bundle copies of system libraries + Does not use Prefix: /usr + Package owns all directories it creates + No duplicate files in %files + Permissions are properly set and %files has %defattr + %clean contains rm -rf $RPM_BUILD_ROOT + Consistent use of macros + Package contains code or permissible content n/a Large documentation files should go in -doc subpackage + Files marked %doc should not affect package n/a Header files should be in -devel Fedora MinGW guidelines allow headers in main package + Static libraries are in mingw32-curl-static + Packages containing pkgconfig (.pc) files need 'Requires: pkgconfig' n/a Library files that end in .so must go in a -devel package n/a -devel must require the fully versioned base n/a Packages should not contain libtool .la files Fedora MinGW guidelines allow .la files n/a Packages containing GUI apps must include %{name}.desktop file + Packages must not own files or directories owned by other packages + %install begins with rm -rf $RPM_BUILD_ROOT + Filenames must be valid UTF-8 ! This package includes curl.exe, which I believe is out of scope for Fedora MinGW, as only development libraries are allowed. Curl.exe is a full-blown command-line standalone cross-compiled application that is not allowed under the Fedora MinGW rules.
> # See nss/README for the status of this package. > #BuildRequires: mingw32-nss > # Temporarily we can use OpenSSL instead of NSS: > BuildRequires: mingw32-openssl IIUC this will cause license compatibility problems for some apps using libcurl. OpenSSL is not GPL compatible unless the app has declared an exception for OpenSSL, so if libcurl uses OpenSSL instead of NSS, AFAICT, GPL apps won't be able to use it. This would prevent mingw32-libvirt using it for example. In addition this is causing mingw32-curl to deviate from native curl which is something we want to avoid with Mingw32. IMHO this package needs to be made to use mingw32-nss before approval
Erik, any update on this? I'd be happy to approve the package if you remove curl.exe. I don't really believe in packages improving out of tree; libcurl can always be switched to use NSS at a later date. IMHO it's better to have an openssl-linked libcurl in official Fedora repos than no libcurl at all.
Oh, and regarding concerns about libvirt: according to Fedora spec file, libvirt is LGPLv2+. Unlike GPL, as far as I know LGPL-licensed code does not need the openssl linking exception to legally link against openssl.
Spec URL: http://www.ftd4linux.nl/contrib/mingw32-curl.spec SRPM URL: http://www.ftd4linux.nl/contrib/mingw32-curl-7.20.1-1.fc13.src.rpm * Thu May 13 2010 Erik van Pienbroek <epienbro> - 7.20.1-1 - Update to 7.20.1 - Merged the patches of the native .spec file (7.20.1-5) - Dropped the curl.exe - Use the Win32 threads API instead of mingw32-pthreads - Dropped BR: pkgconfig
Forgot to mention this: the scratch build is done at http://koji.fedoraproject.org/koji/taskinfo?taskID=2185045
Looks good. APPROVED
Thanks for the review! New Package CVS Request ======================= Package Name: mingw32-curl Short Description: MinGW Windows port of libcurl Owners: epienbro Branches: F-12 F-13 EL-5 InitialCC:
CVS Done
mingw32-curl-7.20.1-2.el5 has been submitted as an update for Fedora EPEL 5. http://admin.fedoraproject.org/updates/mingw32-curl-7.20.1-2.el5
mingw32-curl-7.20.1-1.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/mingw32-curl-7.20.1-1.fc12
mingw32-curl-7.20.1-1.fc13 has been submitted as an update for Fedora 13. http://admin.fedoraproject.org/updates/mingw32-curl-7.20.1-1.fc13
mingw32-curl-7.20.1-1.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report.
mingw32-curl-7.20.1-1.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report.
mingw32-curl-7.20.1-2.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.