aboutsummaryrefslogtreecommitdiff
path: root/test/postinstall
diff options
context:
space:
mode:
authorMike Taves <mwtoews@gmail.com>2021-04-07 11:25:30 +1200
committerMike Taves <mwtoews@gmail.com>2021-04-07 13:08:22 +1200
commit0abacbc927c37c93a90a25770d1e9b059c440bc3 (patch)
treeede3ef262a488364eb2237c961e57802730ef0a7 /test/postinstall
parentec25bdc7b5ad3155d0078379bbca5ac9efd8280d (diff)
downloadPROJ-0abacbc927c37c93a90a25770d1e9b059c440bc3.tar.gz
PROJ-0abacbc927c37c93a90a25770d1e9b059c440bc3.zip
CI: build and test on MSYS2 with Windows
Diffstat (limited to 'test/postinstall')
-rwxr-xr-xtest/postinstall/test_pkg-config.sh27
-rw-r--r--test/postinstall/testappprojinfo/CMakeLists.txt7
2 files changed, 24 insertions, 10 deletions
diff --git a/test/postinstall/test_pkg-config.sh b/test/postinstall/test_pkg-config.sh
index f9ae36c2..1c3866ec 100755
--- a/test/postinstall/test_pkg-config.sh
+++ b/test/postinstall/test_pkg-config.sh
@@ -15,27 +15,30 @@ if [ -z "$prefix" ]; then
exit 1
fi
-export PKG_CONFIG_PATH=$prefix/lib/pkgconfig
export LD_LIBRARY_PATH=$prefix/lib
-echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH"
-
-PKG_CONFIG_MODVERSION=$(pkg-config proj --modversion)
-echo "pkg-config proj --modversion: $PKG_CONFIG_MODVERSION"
-PKG_CONFIG_DATADIR=$(pkg-config proj --variable=datadir)
-echo "pkg-config proj --variable=datadir: $PKG_CONFIG_DATADIR"
-
UNAME=$(uname)
case $UNAME in
Darwin*)
alias ldd="otool -L" ;;
Linux*)
;;
+ MINGW* | MSYS*)
+ prefix=$(cygpath -u ${prefix})
+ export LD_LIBRARY_PATH=$prefix/bin ;;
*)
echo "no ldd equivalent found for UNAME=$UNAME"
exit 1 ;;
esac
+export PKG_CONFIG_PATH=$prefix/lib/pkgconfig
+echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH"
+
+PKG_CONFIG_MODVERSION=$(pkg-config proj --modversion)
+echo "pkg-config proj --modversion: $PKG_CONFIG_MODVERSION"
+PKG_CONFIG_DATADIR=$(pkg-config proj --variable=datadir)
+echo "pkg-config proj --variable=datadir: $PKG_CONFIG_DATADIR"
+
cd $(dirname $0)
PROGRAM=testappprojinfo
@@ -46,8 +49,8 @@ make
ERRORS=0
LDD_OUTPUT=$(ldd ./$PROGRAM | grep proj)
-LDD_SUBSTR=$LD_LIBRARY_PATH/libproj.
-LDD_RPATH_SUBSTR=@rpath/libproj.
+LDD_SUBSTR=$LD_LIBRARY_PATH/libproj
+LDD_RPATH_SUBSTR=@rpath/libproj
printf "Testing expected ldd output ... "
case "$LDD_OUTPUT" in
*$LDD_SUBSTR*)
@@ -60,6 +63,10 @@ case "$LDD_OUTPUT" in
esac
SEARCHPATH_OUTPUT=$(./$PROGRAM -s)
+case $UNAME in
+ MINGW* | MSYS*)
+ SEARCHPATH_OUTPUT=$(echo "$SEARCHPATH_OUTPUT" | tr '\\' '/')
+esac
printf "Testing expected searchpath/datadir ... "
case "$SEARCHPATH_OUTPUT" in
*$PKG_CONFIG_DATADIR*)
diff --git a/test/postinstall/testappprojinfo/CMakeLists.txt b/test/postinstall/testappprojinfo/CMakeLists.txt
index beac54ff..2b3cf70e 100644
--- a/test/postinstall/testappprojinfo/CMakeLists.txt
+++ b/test/postinstall/testappprojinfo/CMakeLists.txt
@@ -27,6 +27,13 @@ if(APPLE)
elseif(UNIX)
set(LDD_CL "ldd")
set(EXPECTED_LDD_CL_OUT "${CMAKE_PREFIX_PATH}/lib/libproj")
+elseif(CMAKE_GENERATOR STREQUAL "MSYS Makefiles")
+ set(LDD_CL "ldd")
+ # Convert to Unix-style path
+ execute_process(
+ COMMAND cygpath -u ${CMAKE_PREFIX_PATH}/bin/libproj
+ OUTPUT_VARIABLE EXPECTED_LDD_CL_OUT
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
if(LDD_CL)