test/relocate.sh
author J. Ali Harlow <ali@juiblex.co.uk>
Fri Oct 03 15:05:33 2014 +0100 (2014-10-03)
changeset 453 1fd1d221092d
child 456 bae5adee8c8c
permissions -rwxr-xr-x
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.
     1 #!/bin/sh
     2 check_file()
     3 {
     4     ../src/razor list-files | grep -x "$1" > /dev/null
     5     if [ $? -ne 0 ]; then
     6 	echo $1: Not in database >&2
     7 	exit 1
     8     fi
     9     if [ ! -e "$RAZOR_ROOT$1" ]; then 
    10 	echo $1: Not in filesystem >&2
    11 	exit 1
    12     fi
    13 }
    14 export RAZOR_ROOT=`mktemp -dt` || exit 1
    15 ../src/razor init || exit 1
    16 export YUM_URL="file://localhost/`pwd`"
    17 ../src/razor import-yum || exit 1
    18 ../src/razor install zap || exit 1
    19 ../src/razor install --relocate /usr=/opt --relocate /etc=/opt/etc zsh || exit 1
    20 check_file /etc/zsh.conf
    21 check_file /usr/bin/zap
    22 check_file /opt/bin/zip
    23 check_file /opt/bin/zsh
    24 rm -rf "$RAZOR_ROOT"