Spec URL: http://nodoid.homelinux.org/fedora/mdbtools.spec SRPM URL: http://nodoid.homelinux.org/fedora/mdbtools-0.5-1.src.rpm Description: The MDB Tools project is a effort to document the MDB file format used in Microsoft's Access database package, and to provide a set of tools and applications to make that data available on other platforms. Specifically, MDB Tools includes programs to export schema and data to other databases such as MySQL, Oracle, Sybase, PostgreSQL, and others. Also included is a SQL engine for performing simple SQL queries. The 0.5 release includes an updated GUI interface (screenshot is available here). A sparse but functional ODBC driver is included as well. MDB Tools currently has read-only support for Access 97 (Jet 3) and Access 2000/2002 (Jet 4) formats.
And here's the review: 1. package doesn't meet naming and packaging guidelines, see below. %setup -q -n %{name}-%{version} is redundant, %setup -q is enough. Make that line %{_includedir}/mdb* read %{_includedir}/mdb*.h Please split the GUI app into a separate package, it adds a lot of dependencies. Please split the libraries into %package -n libmdb and put LGPL in its License: field (see 6. below). Consider splitting the ODBC driver, too. 2. specfile is properly named, is cleanly written and uses macros consistently. 3. dist tag is present. 4. build root is correct. %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 5. license field matches the actual license, but see 1. "Files in libmdb are licensed under LGPL and the utilities under the GPL, see COPYING.LIB and COPYING files respectively." 6. license is open source-compatible (GPL/LGPL). License text included in package. Add COPYING.LIB to %docs. 7. source files match upstream: 4a18bf96e67161101cade64526756d22 mdbtools-0.5.tar.gz 8. latest version is being packaged. Is 0.6pre1 not stable enough? 9. BuildRequires are probably incomplete, you are not building the ODBC driver. I suggest adding BR: unixODBC-devel and --with-unixodbc=/proper/path 10. package builds in mock (x86_64/devel,fc6). 11. rpmlint warning can be fixed by adding HACKING to -devel %doc. W: mdbtools-devel no-documentation 12. final provides and requires are sane, but see 1. mdbtools-0.5-1.fc7.x86_64.rpm libmdb.so.0()(64bit) libmdbsql.so.0()(64bit) mdbtools = 0.5-1.fc7 = /sbin/ldconfig libICE.so.6()(64bit) libORBit-2.so.0()(64bit) libSM.so.6()(64bit) libart_lgpl_2.so.2()(64bit) libatk-1.0.so.0()(64bit) libbonobo-2.so.0()(64bit) libbonobo-activation.so.4()(64bit) libbonoboui-2.so.0()(64bit) libc.so.6()(64bit) libcairo.so.2()(64bit) libdl.so.2()(64bit) libgconf-2.so.4()(64bit) libgdk-x11-2.0.so.0()(64bit) libgdk_pixbuf-2.0.so.0()(64bit) libglade-2.0.so.0()(64bit) libglib-2.0.so.0()(64bit) libgmodule-2.0.so.0()(64bit) libgnome-2.so.0()(64bit) libgnome-keyring.so.0()(64bit) libgnomecanvas-2.so.0()(64bit) libgnomeui-2.so.0()(64bit) libgnomevfs-2.so.0()(64bit) libgobject-2.0.so.0()(64bit) libgthread-2.0.so.0()(64bit) libgtk-x11-2.0.so.0()(64bit) libm.so.6()(64bit) libmdb.so.0()(64bit) libmdbsql.so.0()(64bit) libpango-1.0.so.0()(64bit) libpangocairo-1.0.so.0()(64bit) libpangoft2-1.0.so.0()(64bit) libpng12.so.0()(64bit) libpopt.so.0()(64bit) libpthread.so.0()(64bit) librt.so.1()(64bit) libxml2.so.2()(64bit) 13. shared libraries are present and handled properly with ldconfig. 14. package is not relocatable. 15. owns the directories it creates. 16. doesn't own any directories it shouldn't. 17. no duplicates in %files. 18. file permissions are appropriate. 19. %clean is present. 20. %check is not present and no testsuite. 21. no scriptlets present. 22. code, not content. 23. documentation is small, so no -docs subpackage is necessary. 24. %docs are not necessary for the proper functioning of the package. 25. headers present only in -devel. 26. no pkgconfig files. 27. no libtool .la droppings. 28. GUI app, but no .desktop file. 29. not a web app. NEEDSWORK: 1, 6, 8, 9, 11, 28.
Spec URL: http://nodoid.homelinux.org/fedora/mdbtools.spec SRPM URL: http://nodoid.homelinux.org/fedora/mdbtools-0.5-2.src.rpm All except the desktop file has been address. I know 0.6pre1 is available, but it has quite a bit of code problems and I'd rather get 0.5 into FE before starting to hack around with 0.6pre1 odbc was a swine!
Spec URL: http://nodoid.homelinux.org/fedora/mdbtools.spec SRPM URL: http://nodoid.homelinux.org/fedora/mdbtools-0.5-3.src.rpm desktop file issue fixed
%package libmdb This was supposed to be %package -n libmdb You can call the subpackage -libs, too. IOW: either libmdb or mdbtools-libs. Looks like the latter might be a better idea. ldconfig is not called for every subpackage with libs in %{_libdir} now. Instead you're calling it in the main package which no longer has any libs.
Spec URL: http://nodoid.homelinux.org/fedora/mdbtools.spec SRPM URL: http://nodoid.homelinux.org/fedora/mdbtools-0.5-4.src.rpm Fixes the ldconfig problem
ldconfig calls for -devel are unnecessary. You seem to have ignored first part of comment #4, please rename libmdb to libs. Requires: mdbtools-libmdb for main package is redundant. Doesn't build in mock/fc6: Making all in odbc make[2]: Entering directory `/builddir/build/BUILD/mdbtools-0.5/src/odbc' source='odbc.c' object='odbc.lo' libtool=yes \ depfile='.deps/odbc.Plo' tmpdepfile='.deps/odbc.TPlo' \ depmode=gcc3 /bin/sh ../../depcomp \ /usr/bin/libtool --mode=compile gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_ STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"mdbtools\" -DVERSION=\"0.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHA VE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDI NT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DYYTEXT_POINTER=1 -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_ UNISTD_H=1 -DHAVE_WORDEXP_H=1 -I. -I. -I ../../include `glib-config --cflags` -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOUR CE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DSQL -DUNIXODBC -c -o odbc.lo `test - f 'odbc.c' || echo './'`odbc.c /bin/sh: glib-config: command not found mkdir .libs gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -D PACKAGE=\"mdbtools\" -DVERSION=\"0.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAV E_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H =1 -DYYTEXT_POINTER=1 -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 -DHAVE_UNISTD_H=1 -DHAVE_WORDEXP_H=1 -I. -I. - I ../../include -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DSQL -DUNIXODBC -c odbc.c -MT odbc.lo -MD -MP -MF .deps/odbc.TPlo -fPIC -DPIC -o .libs/odbc.o In file included from ../../include/mdbodbc.h:22, from odbc.c:28: ../../include/mdbtools.h:31:18: error: glib.h: No such file or directory Attached patch makes it look for glib2 instead of glib and fixes some minor issues in the code as well, but the rest of the code triggers a lot of gcc warnings. You might want to look through the build log and fix them. With that fix, it builds fine in mock, just some small rpmlint issues: $ rpmlint *.rpm E: mdbtools script-without-shebang /usr/share/doc/mdbtools-0.5/COPYING.LIB -> chmod 644 COPYING.LIB in %prep W: mdbtools-libs summary-not-capitalized libraries for mdbtools -> Capitalize Does the frontend really requires the command line tools or only the libraries? In the latter case, Requires: mdbtools in %package frontend is unnecessary.
Created attachment 146785 [details] Patch to fix build of odbc lib.
Spec URL: http://nodoid.homelinux.org/fedora/mdbtools.spec SRPM URL: http://nodoid.homelinux.org/fedora/mdbtools-0.5-5.src.rpm Fixes all of #6
The files are inaccessible (404 not found).
Yeah, network fault at home. should be working now.
Still not accessible.
No response for over a month, I will close this within a week, per http://fedoraproject.org/wiki/Extras/Policy/StalledReviews .
No response, closing.