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).
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.
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.
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 03 Oct 2014 12:26:22 +0100] rev 452
Add RAZOR_HAVE_ATOMIC_ROLLBACK
J. Ali Harlow <ali@juiblex.co.uk> [Fri, 03 Oct 2014 12:24:10 +0100] rev 451
Fix make distcheck
J. Ali Harlow <ali@juiblex.co.uk> [Tue, 30 Sep 2014 18:12:55 +0100] rev 450
razor_atomic_create_dir() shouldn't set mode of existing directories
J. Ali Harlow <ali@juiblex.co.uk> [Tue, 30 Sep 2014 16:19:55 +0100] rev 449
Setting toplevel from a non-existant path fails
J. Ali Harlow <ali@juiblex.co.uk> [Thu, 11 Sep 2014 18:54:16 +0100] rev 448
Remove prototype for long-removed razor_set_get_package
J. Ali Harlow <ali@juiblex.co.uk> [Tue, 09 Sep 2014 15:27:12 +0100] rev 447
Add error domains and codes
J. Ali Harlow <ali@juiblex.co.uk> [Tue, 09 Sep 2014 15:04:24 +0100] rev 446
Add razor_transaction_unsatisfied()