2014-11-11Fix memory leak
J. Ali Harlow <ali@juiblex.co.uk> [Tue, 11 Nov 2014 15:57:14 +0000] rev 461
Fix memory leak

2014-10-22Add basic checks for rpm file format
J. Ali Harlow <ali@juiblex.co.uk> [Wed, 22 Oct 2014 12:09:47 +0100] rev 460
Add basic checks for rpm file format

2014-10-17Add missing files
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 17 Oct 2014 10:13:48 +0100] rev 459
Add missing files

2014-10-17Fix multiple memory allocation problems (found with valgrind)
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 17 Oct 2014 10:10:57 +0100] rev 458
Fix multiple memory allocation problems (found with valgrind)

2014-10-17Add low-level dump command to aid debugging
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 17 Oct 2014 10:08:28 +0100] rev 457
Add low-level dump command to aid debugging

2014-10-17Add facility to specify razor command when running tests.
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 17 Oct 2014 09:57:19 +0100] rev 456
Add facility to specify razor command when running tests.

This makes it easy to run under eg., valgrind as:

./details "libtool --mode=execute valgrind --leak-check=yes ../src/razor"

2014-10-09Support downloading from local repository even without libcurl
J. Ali Harlow <ali@juiblex.co.uk> [Thu, 09 Oct 2014 17:27:41 +0100] rev 455
Support downloading from local repository even without libcurl

Using the --url option of the razor executable, it is possible
to specify a yum repository on the local machine (eg., on installation
media) and import from there, eg.,:

C> razor --url file:///d:/ import-yum

This will be handled by libcurl if available but if not, an internal
copy routine will be used.

Note that if Microsoft's KTM implementation of atomic transactions is
used, then the current directory must support atomic transactions
(also improve error messages for this, and other, cases).

2014-10-04Only export symbols starting with razor_ in dynamic library.
J. Ali Harlow <ali@juiblex.co.uk> [Sat, 04 Oct 2014 18:12:58 +0100] rev 454
Only export symbols starting with razor_ in dynamic library.

Apart from being good practice to avoid clashes with higher-level
libraries and the application, this also fixes an obscure bug: The
gnulib library is used both by librazor (the dynamic library) and
by razor (the executable). In doing so, we want to have two separate
copies of the library despite the code duplication this involves.
Without the explicit limit to export only razor_ symbols, the razor
executable under mingw64 was picking up the getopt_long function
from librazor and the optind variable from libgnu which meant that
it did not see optind changing. Hiding librazor's copy of getopt
causes the linker to find libgnu's copy and everything works.

Note that under mingw librazor-#.dll still contains undocumented
(private) razor_ symbols but these will do no harm as long as nobody
tries to use them.

2014-10-03Add INTLLIBS back into librazor_la_LIBADD and also into razor.pc
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 03 Oct 2014 15:05:33 +0100] rev 453
Add INTLLIBS back into librazor_la_LIBADD and also into razor.pc

INTLLIBS was originally added into librazor_la_LIBADD (but not razor.pc)
in 611c84a3f4b4538a65d186050608c17adbf17770 and then removed in
236cfc8ecc5c66288e41bf9b72051a3b18326e1c over concerns that it meant
that building static applications (eg., in plover) required a static
version of libintl. Since then, however, the inclusion of gnulib's
getopt has caused the build to fail without INTLLIBS in librazor_la_LIBADD
with messages of the form:

../gl/.libs/libgnu.a(getopt.o): In function `_getopt_internal_r':
/home/ali/wk/razor/vpath/gl/../../working/gl/getopt.c:808: undefined reference to `libintl_gettext'

while building librazor.dll.a

Thus it appears that INTLLIBS really is needed and should go back into
librazor_la_LIBADD (which fixes the build) and should also be in Libs.private
in razor.pc for static builds. This means that a static version of libintl
will be required (eg., as part of mingw64-gettext-static).

Along the way, razor.pc has also been fixed to avoid overlinking
(https://wiki.openmandriva.org/en/Overlinking_issues_in_packaging)
and a missing include directory that caused the razor executable to
fail to build was added.

2014-10-03Add RAZOR_HAVE_ATOMIC_ROLLBACK
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 03 Oct 2014 12:26:22 +0100] rev 452
Add RAZOR_HAVE_ATOMIC_ROLLBACK