Spec URL: https://drive.google.com/uc?export=download&id=0BzMS3N8RDtOIeklKbFBiam13bjA SRPM URL: https://copr-be.cloud.fedoraproject.org/results/srakitnican/default/fedora-25-ppc64le/00560435-libdxflib/libdxflib-3.17.0-1.fc25.src.rpm Description: dxflib is an open source C++ library mainly for parsing DXF™ files. Fedora Account System Username: srakitnican
We need legal review for this software. Commercial license included: ********************************************************************** dxflib COMMERCIAL LICENSE AGREEMENT FOR PROFESSIONAL EDITIONS Agreement version 1.2 IMPORTANT-READ CAREFULLY: 1. This RibbonSoft End-User License Agreement ("Agreement") is a legal agreement between you (either an individual or a legal entity) ("Licensee") and RibbonSoft GmbH ("RibbonSoft") for the RibbonSoft software product(s) accompanying this Agreement, which include(s) computer software and may include "online" or electronic documentation, associated media, and printed materials, including the source code, example programs and the documentation ("Licensed Software"). 2. The Licensed Software is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties. The Licensed Software is licensed, not sold. 3. By installing, copying, or otherwise using the Licensed Software, Licensee agrees to be bound by the terms of this Agreement. If Licensee does not agree to the terms of this Agreement, Licensee may not install, copy, or otherwise use the Licensed Software. 4. Upon Licensee's acceptance of the terms and conditions of this Agreement, RibbonSoft grants Licensee the right to use the Licensed Software in the manner provided below. 5. RibbonSoft grants to Licensee as an individual a royalty-free, personal, non-exclusive, non-transferable, perpetual license to make and use copies of the Licensed Software for the sole purposes of designing, developing, and testing Licensee's software product(s) ("Applications"). Licensee may install copies of the Licensed Software on an unlimited number of computers provided that Licensee is the only individual using the Licensed Software. If Licensee is an entity, RibbonSoft grants Licensee the right to designate one, and only one, individual within Licensee's organization who shall have the sole right to use the Licensed Software in the manner provided above. Licensee may at any time, but not more frequently that once every six (6) months, designate another individual within Licensee's organization to replace the current designated user by notifying RibbonSoft, so long as there is no more than one designated user at any given time. GENERAL TERMS THAT APPLY TO APPLICATIONS AND REDISTRIBUTABLES 6. RibbonSoft grants Licensee a nonexclusive, royalty-free right to reproduce and distribute the object code form of certain portions of the Licensed Software ("Redistributables"), as specified in Appendix 1, Section 1, for execution on any operating system. Copies of Redistributables may only be distributed with and for the sole purpose of executing Applications permitted under this Agreement that Licensee has created using the Licensed Software. Under no circumstances may any copies of Redistributables be distributed separately. This Agreement does not give Licensee any rights to distribute any of the parts of the Licensed Software listed in Appendix 1, Section 2, neither as a whole nor as parts or snippets of code. 7. The license granted in this Agreement for Licensee to create Applications and distribute them to Licensee's customers is subject to all of the following conditions: (i) Licensee will indemnify and hold RibbonSoft, its related companies and its suppliers, harmless from and against any claims or liabilities arising out of the use, reproduction or distribution of Applications; (ii) Applications must be developed using a licensed, registered copy of the Licensed Software; (iii) Applications must add primary and substantial functionality to the Licensed Software; (iv) Applications may not pass on functionality which in any way makes it possible for others to create software with the Licensed Software; (v) Applications may not compete with the Licensed Software; (iv) Licensee may not use RibbonSoft's or any of its suppliers' names, logos, or trademarks to market Application(s), except to state that Application was developed using the Licensed Software. NOTE: dxflib Open Source Edition is licensed under the terms of the GPL and not under this Agreement. If Licensee has, at any time, developed all (or any portions of) the Application(s) using RibbonSoft's publicly licensed dxflib Open Source Edition, Licensee must comply with RibbonSoft's requirements and license such Application(s) (or any portions derived there from) under the terms of the Free Software Foundation's GNU General Public License version 2 (the "GPL") a copy of which is located at http://www.gnu.org/copyleft/gpl.html#SEC1 (i.e., any Product(s) and/or parts, components, portions thereof developed using GPL licensed software, including dxflib Open Source Edition, must be licensed under the terms of the GPL, and the GPL-based source code must be made available upon request). WARRANTY DISCLAIMER 8. The Licensed Software is licensed to Licensee "as is". To the maximum extent permitted by applicable law, RibbonSoft on behalf of itself and its suppliers, disclaims all warranties and conditions, either express or implied, including, but not limited to, implied warranties of merchantability, fitness for a particular purpose, title and non-infringement with regard to the Licensed Software. LIMITATION OF LIABILITY 9. If, RibbonSoft's warranty disclaimer notwithstanding, RibbonSoft is held liable to Licensee, whether in contract, tort or any other legal theory, based on the Licensed Software, RibbonSoft's entire liability to Licensee and Licensee's exclusive remedy shall be, at RibbonSoft's option, either (A) return of the price Licensee paid for the Licensed Software, or (B) repair or replacement of the Licensed Software, provided Licensee returns to RibbonSoft all copies of the Licensed Software as originally delivered to Licensee. RibbonSoft shall not under any circumstances be liable to Licensee based on failure of the Licensed Software if the failure resulted from accident, abuse or misapplication, nor shall RibbonSoft under any circumstances be liable for special damages, punitive or exemplary damages, damages for loss of profits or interruption of business or for loss or corruption of data. Any award of damages from RibbonSoft to Licensee shall not exceed the total amount Licensee has paid to RibbonSoft in connection with this Agreement. SUPPORT AND UPDATES 10. Licensee will be eligible to access to Updates ("Updates") to the Licensed Software for a period not to exceed one year from the date of initial delivery ("Initial Term"), in accordance with RibbonSoft's then current policies and procedures, if any. Such policies and procedures may be changed from time to time. Following the Initial Term, RibbonSoft will no longer make the Licensed Software available to Licensee unless Licensee purchases additional Updates according to section 11 below. GENERAL PROVISIONS 11. Licensee Name: RibbonSoft may include Licensee's company name in a publicly available list of RibbonSoft customers. 12. Renewal of Updates: Licensee may purchase additional Updates following the Initial Term at RibbonSoft's terms and conditions applicable at the time of renewal. 13. No Assignment: Neither this Agreement nor Licensee's rights under this Agreement are assignable or transferable by Licensee either in whole or in part to any third party without RibbonSoft's written consent. Any attempted assignment or transfer in violation of the foregoing shall be void. RibbonSoft may assign or transfer this Agreement to any third party who acquires substantially all of RibbonSoft copyrights in and to the Licensed Software. 14. Termination: RibbonSoft may terminate the Agreement at any time immediately upon written notice by RibbonSoft to Licensee if Licensee breaches this Agreement, fails to pay the fees for the Licensed Software, or infringes RibbonSoft's intellectual property in or to the Licensed Software. Upon termination of the Licenses, Licensee shall return to RibbonSoft all copies of Licensed Software that were supplied by RibbonSoft. All other copies of Licensed Software in the possession or control of Licensee must be erased or destroyed. An officer of Licensee must promptly deliver to RibbonSoft a written confirmation that this has occurred. 15. Entire Agreement: This Agreement constitutes the complete agreement between the parties and supersedes all prior or contemporaneous discussions, representations, and proposals, written or oral, with respect to the subject matters discussed herein. No modification of this Agreement will be effective unless contained in a writing executed by an authorized representative of each party. No term or condition contained in Licensee's purchase order will apply unless expressly accepted by RibbonSoft in writing. If any provision of the Agreement is found void or unenforceable, the remainder will remain valid and enforceable according to its terms. If any remedy provided is determined to have failed for its essential purpose, all limitations of liability and exclusions of damages set forth in this Agreement shall remain in effect. 16. Governing law, legal venue: This Agreement shall be construed, interpreted and governed by the laws of Switzerland, the legal venue to be Zurich City Court. RibbonSoft reserves all rights not specifically granted in this Agreement. Appendix 1: 1. Parts of the Licensed Software that are permitted for distribution ("Redistributables"): - The Licensed Software's library in object code form 2. Parts of the Licensed Software that are not permitted for distribution include, but are not limited to: - The Licensed Software's source code and header files - The Licensed Software's documentation ***************************************************************************
** This file is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation; either version 2 of the License, or ** (at your option) any later version. ** ** Licensees holding valid dxflib Professional Edition licenses may use ** this file in accordance with the dxflib Commercial License ** Agreement provided with the Software. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** Basically, in English, if the GPL makes you uncomfortable, you can buy a proprietary license to use dxflib. Since the GPL does not make us uncomfortable, we will use it under that license. :) Lifting FE-Legal.
SPEC url is not reachable with Fedora tools, please use that one from copr or a direct link to the file as a plain text. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - qcad is built with Qt5 on Fedora rawhide (27). Please, make a Qt5 version too. - You can use %make_build and %make_install macros. ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: Header files in -devel subpackage, if present. [x]: ldconfig called in %post and %postun if required. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. [x]: Development (unversioned) .so files in -devel subpackage, if present. Generic: [x]: Package is licensed with an open-source compatible license and meets other legal requirements as defined in the legal section of Packaging Guidelines. [x]: License field in the package spec file matches the actual license. Note: Checking patched sources after %prep for licenses. Licenses found: "LGPL", "GPL (v2 or later)", "Unknown or generated". 14 files have unknown license. Detailed output of licensecheck in /home/sagitter/libdxflib/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [x]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [x]: 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 %license. [x]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [x]: Package does not own files or directories owned by other packages. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 0 bytes in 0 files. [x]: Packages must not store files under /srv, /opt or /usr/local ===== SHOULD items ===== Generic: [-]: 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]: Final provides and requires are sane (see attachments). [x]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in libdxflib-debuginfo [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: Patches link to upstream bugs/comments/lists or are otherwise justified. [x]: Scriptlets must be sane, if used. [-]: Description and summary sections in the package spec file contains translations for supported Non-English languages, if available. [x]: Package should compile and build into binary rpms on all supported architectures. [-]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Uses parallel make %{?_smp_mflags} macro. [x]: The placement of pkgconfig(.pc) files are correct. [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. Rpmlint ------- Checking: libdxflib-3.17.0-1.fc27.x86_64.rpm libdxflib-devel-3.17.0-1.fc27.x86_64.rpm libdxflib-debuginfo-3.17.0-1.fc27.x86_64.rpm libdxflib-3.17.0-1.fc27.src.rpm libdxflib.x86_64: W: spelling-error %description -l en_US dxflib -> Delibes libdxflib.x86_64: W: no-documentation libdxflib.x86_64: W: hidden-file-or-dir /usr/lib/.build-id libdxflib.x86_64: W: hidden-file-or-dir /usr/lib/.build-id libdxflib-devel.x86_64: W: only-non-binary-in-usr-lib libdxflib-devel.x86_64: W: no-documentation libdxflib.src: W: spelling-error %description -l en_US dxflib -> Delibes 4 packages and 0 specfiles checked; 0 errors, 7 warnings. Rpmlint (debuginfo) ------------------- Checking: libdxflib-debuginfo-3.17.0-1.fc27.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings. Rpmlint (installed packages) ---------------------------- sh: /usr/bin/python: No such file or directory libdxflib.x86_64: W: spelling-error %description -l en_US dxflib -> Delibes libdxflib.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libdxflib.so.3.17.0 /lib64/libQtGui.so.4 libdxflib.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libdxflib.so.3.17.0 /lib64/libQtCore.so.4 libdxflib.x86_64: W: unused-direct-shlib-dependency /usr/lib64/libdxflib.so.3.17.0 /lib64/libpthread.so.0 libdxflib.x86_64: W: no-documentation libdxflib.x86_64: W: hidden-file-or-dir /usr/lib/.build-id libdxflib.x86_64: W: hidden-file-or-dir /usr/lib/.build-id libdxflib-devel.x86_64: W: only-non-binary-in-usr-lib libdxflib-devel.x86_64: W: no-documentation 3 packages and 0 specfiles checked; 0 errors, 9 warnings. Requires -------- libdxflib-debuginfo (rpmlib, GLIBC filtered): libdxflib (rpmlib, GLIBC filtered): /sbin/ldconfig libQtCore.so.4()(64bit) libQtGui.so.4()(64bit) libc.so.6()(64bit) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libm.so.6()(64bit) libpthread.so.0()(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.8)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) rtld(GNU_HASH) libdxflib-devel (rpmlib, GLIBC filtered): /usr/bin/pkg-config libdxflib(x86-64) libdxflib.so.3()(64bit) Provides -------- libdxflib-debuginfo: libdxflib-debuginfo libdxflib-debuginfo(x86-64) libdxflib: libdxflib libdxflib(x86-64) libdxflib.so.3()(64bit) libdxflib-devel: libdxflib-devel libdxflib-devel(x86-64) pkgconfig(dxflib) Source checksums ---------------- https://qcad.org/archives/dxflib/dxflib-3.17.0-src.tar.gz : CHECKSUM(SHA256) this package : 26c5acfb55150c5fc5d4b35f21582824845628bea9a893e7fcf71c83e07fd227 CHECKSUM(SHA256) upstream package : 26c5acfb55150c5fc5d4b35f21582824845628bea9a893e7fcf71c83e07fd227 Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -rn libdxflib-3.17.0-1.fc25.src.rpm Buildroot used: fedora-rawhide-x86_64 Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6
Thank you for your review! (In reply to Antonio Trande from comment #3) > SPEC url is not reachable with Fedora tools, please use that one from copr > or a direct link to the file as a plain text. There is no git tree when first version of the package is submitted, hence I can not use copr for that, but I should be able to use it for next releases. > ======= > - qcad is built with Qt5 on Fedora rawhide (27). > Please, make a Qt5 version too. I am not sure what do you mean by that. Should I build a separate package, subpackage, or just make it an option? Do you have any examples of similar packages? > - You can use %make_build and %make_install macros. I think I can use %make_build, not so sure about %make_install.
(In reply to srakitnican from comment #4) > Thank you for your review! > > (In reply to Antonio Trande from comment #3) > > SPEC url is not reachable with Fedora tools, please use that one from copr > > or a direct link to the file as a plain text. > > There is no git tree when first version of the package is submitted, hence I > can not use copr for that, but I should be able to use it for next releases. > > > > ======= > > - qcad is built with Qt5 on Fedora rawhide (27). > > Please, make a Qt5 version too. > > I am not sure what do you mean by that. Should I build a separate package, > subpackage, or just make it an option? > > Do you have any examples of similar packages? > > > - You can use %make_build and %make_install macros. > > I think I can use %make_build, not so sure about %make_install. A sub-package like 'qt5-streamer': http://pkgs.fedoraproject.org/cgit/rpms/qt-gstreamer.git/tree/qt-gstreamer.spec
Under the same name/path? I am asking because here's the case that library is called exactly the same for both qt4 and qt5, in that case packages would conflict, is that OK?
I am actually wondering why it depends on Qt at all, I thought it is using it just for the build system.
This is much more like it: $ rpm -qp --requires /var/lib/mock/fedora-25-x86_64/result/libdxflib-3.17.0-2.fc25.x86_64.rpm /sbin/ldconfig /sbin/ldconfig 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) libgcc_s.so.1()(64bit) libgcc_s.so.1(GCC_3.0)(64bit) libm.so.6()(64bit) libm.so.6(GLIBC_2.2.5)(64bit) libstdc++.so.6()(64bit) libstdc++.so.6(CXXABI_1.3)(64bit) libstdc++.so.6(CXXABI_1.3.8)(64bit) libstdc++.so.6(CXXABI_1.3.9)(64bit) libstdc++.so.6(GLIBCXX_3.4)(64bit) libstdc++.so.6(GLIBCXX_3.4.11)(64bit) libstdc++.so.6(GLIBCXX_3.4.20)(64bit) libstdc++.so.6(GLIBCXX_3.4.21)(64bit) libstdc++.so.6(GLIBCXX_3.4.9)(64bit) rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 rtld(GNU_HASH) Changes from previous release: * Remove unicode trademark sign from description * Use macro for make * Disable qmake linking to Qt SPEC: http://copr-dist-git.fedorainfracloud.org/cgit/srakitnican/default/libdxflib.git/plain/libdxflib.spec?id=408bff6bcd4c11bae4a063e7115b2c8c792fa153 SRPM: https://copr-be.cloud.fedoraproject.org/results/srakitnican/default/fedora-25-ppc64le/00561004-libdxflib/libdxflib-3.17.0-2.fc25.src.rpm
(In reply to srakitnican from comment #7) > I am actually wondering why it depends on Qt at all, I thought it is using > it just for the build system. Maybe.
(In reply to Antonio Trande from comment #9) > (In reply to srakitnican from comment #7) > > I am actually wondering why it depends on Qt at all, I thought it is using > > it just for the build system. > > Maybe. This package is approved for me. You need a sponsor.
I've now sponsored Samuel into the packager group. Please go ahead, import and build the package. Thank you both!
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/libdxflib
libdxflib-3.17.0-2.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-04d6090cf2
libdxflib-3.17.0-2.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-477dc9fe73
libdxflib-3.17.0-2.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-04d6090cf2
libdxflib-3.17.0-2.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-96b836bb86
libdxflib-3.17.0-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-b692c4e5e1
libdxflib-3.17.0-2.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.
libdxflib-3.17.0-2.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.
libdxflib-3.17.0-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
libdxflib-3.17.0-2.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.