diff options
author | Dan Nicholson <dbn.lists@gmail.com> | 2013-03-26 14:59:32 +0100 |
---|---|---|
committer | Dan Nicholson <dbn.lists@gmail.com> | 2013-04-09 05:41:38 -0700 |
commit | f6212f6b974cc926ff66fad9eecd1f28d38cd46e (patch) | |
tree | f9a1655a7034dc41f8fd610f2823601e3d0ebb47 /check | |
parent | df1ac943d468b48782f4ac81a880627dc0aebb2d (diff) | |
download | pkg-config-f6212f6b974cc926ff66fad9eecd1f28d38cd46e.tar.gz |
Adjust expected path for native Windows test
When check-path is run on native Windows (MINGW), that path reported
by `pkg-config --variable=pc_path pkg-config` is adjusted to the
directory pkg-config is run from. Adjust the expected result based on
getting the current directory from cmd in Windows format.
Diffstat (limited to 'check')
-rwxr-xr-x | check/check-path | 29 | ||||
-rw-r--r-- | check/config.sh.in | 2 |
2 files changed, 23 insertions, 8 deletions
diff --git a/check/check-path b/check/check-path index fecfc06..37244d9 100755 --- a/check/check-path +++ b/check/check-path @@ -9,14 +9,27 @@ PKG_CONFIG_PATH="$srcdir/sub" run_test --exists sub1 # default pkg-config path, making sure to resolve the variables fully eval pc_path="$pc_path" -case ${MACHTYPE} in -*-msys) - # Make sure path doesn't get mangled on MSYS - RESULT=$(echo $pc_path | sed 's,/,\\/,g') - ;; -*) +if [ "$native_win32" = yes ]; then + # This is pretty hacky. On native win32 (MSYS/MINGW), pkg-config + # builds the default path from the installation directory. It + # then adds lib/pkgconfig and share/pkgconfig to it. Normally, + # the autoconf build directory would be used, but that path is in + # Unix format. + if [ "$OSTYPE" = msys ]; then + # MSYS has "pwd -W" to get the current directory in Windows format + pcdir=$(cd $top_builddir/.libs && pwd -W) + else + # Assume we have cmd somewhere to get variable %cd%. Make sure + # to strip carriage returns. + pcdir=$(cd $top_builddir/.libs && + cmd /C echo %cd% | sed -r 's/\r//g') + fi + win_path="$pcdir/lib/pkgconfig;$pcdir/share/pkgconfig" + + # Convert from forward slashes to Windows backslashes + RESULT=$(echo $win_path | sed 's,/,\\,g') +else RESULT=$pc_path - ;; -esac +fi unset PKG_CONFIG_LIBDIR run_test --variable=pc_path pkg-config diff --git a/check/config.sh.in b/check/config.sh.in index 91f20a2..68fa097 100644 --- a/check/config.sh.in +++ b/check/config.sh.in @@ -2,6 +2,7 @@ # Settings from the configure script # +top_builddir=@top_builddir@ prefix=@prefix@ exec_prefix=@exec_prefix@ includedir=@includedir@ @@ -13,3 +14,4 @@ system_include_path="@system_include_path@" system_library_path="@system_library_path@" list_indirect_deps=@use_indirect_deps@ PACKAGE_VERSION=@PACKAGE_VERSION@ +native_win32=@native_win32@ |