LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Suggestions for GDBM, XZ, libarchive and usb_modeswitch packages on Current (https://www.linuxquestions.org/questions/slackware-14/suggestions-for-gdbm-xz-libarchive-and-usb_modeswitch-packages-on-current-4175420392/)

Darth Vader 08-04-2012 06:38 PM

Suggestions for GDBM, XZ, libarchive and usb_modeswitch packages on Current
 
I want to propose a series of modifications and improvements for packages listed in the thread title.

First, though it seems curious, GDBM is still used in programs, and the team where I work is one of those using it. Of course, GDBM works perfectly for our purposes, but we have a little problem. Still, the installed gdbm.h under GCC 4.7 generates a repeatedly warning that is not pleasing to those who are in the testing team, who insist on using the native & unpatched operating system (in this case, now Slackware 13.37). My suggestion is this little patch, which will have to improve our work relationships and silencing that damn warning. :)

Code:

diff -urN gdbm-1.8.3.orig/gdbm.proto gdbm-1.8.3/gdbm.proto
--- gdbm-1.8.3.orig/gdbm.proto        1999-05-19 03:16:06.000000000 +0300
+++ gdbm-1.8.3/gdbm.proto        2011-05-28 18:39:44.964862341 +0300
@@ -60,7 +60,7 @@
 
 
 /* The file information header. This is good enough for most applications. */
-typedef struct {int dummy[10];} *GDBM_FILE;
+typedef struct GDBM_FILE_STRUCT {int dummy[10];} *GDBM_FILE;
 
 /* Determine if the C(++) compiler requires complete function prototype  */
 #ifndef __P

OR, much better will be to upgrade to GDBM-1.10.

Second, I suggest the rebuilding of XZ, for installation of the static library. It is a very simple change on the ./configure flags, from --disable-static to --enable-static. To be honest, this will allow me to work with static linking of libarchive, but at the same time, I want to mention that LIBBZ2 and LIBZ offer right now that static libraries. Why not an equal treatment for (LIB)LZMA? Not everything is an GUI app compiled with CMake, right?

As a note, this support on XZ package, could allow writing a static linked (PKG)TAR, especially for Slackware packages, on top of libarchive, to perform various special processing...

Thirdly, while slackware-current ships libarchive-2.8.5, current stable version is 3.0.4.

Even if on this version (3.0.4), the shared library version bumps after the upgrade, everything works perfectly, without any problems. So I suggest the upgrade to that latest version of libarchive and to add the support for static library (using the same change in ./configure flags: --disable-static to --enable-static).

Finally, slackware-current ships now usb_modeswitch-1.1.6 (with data-20101222), while the current stable version is 1.2.3 (with data-20120531).

Note that this latest version includes an integrated TCL interpreter (JIMSH), then I propose the use of static installation (make install-static), to make an stand-alone package, not depending on any TCL shell.

wildwizard 08-04-2012 09:01 PM

On your first point why not suggest upgrading gdbm to 1.10.

It would fix lots of things including your problem.

Darth Vader 08-04-2012 09:58 PM

Quote:

Originally Posted by wildwizard (Post 4746148)
On your first point why not suggest upgrading gdbm to 1.10.

It would fix lots of things including your problem.

My mistake! I became so obsessed with this compilation warning that I overlooked the variant to upgrade the GDBM ... :)


All times are GMT -5. The time now is 09:08 AM.