diff options
Diffstat (limited to 'check/check-path')
-rwxr-xr-x | check/check-path | 29 |
1 files changed, 21 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 |