Skip to content
Permalink
Browse files
Merge pull request #44772 from qgis/manisandro-patch-1
Assorted MinGW build work
  • Loading branch information
manisandro committed Sep 13, 2021
2 parents 50ab8c1 + 0132ff1 commit cf795616c883ea7a1639642dda6eadc6f583f08b
@@ -69,6 +69,7 @@ jobs:
run: |
mkdir -p ${GITHUB_WORKSPACE}/.ccache
docker run \
--security-opt seccomp=unconfined \
--env CCACHE_DIR=/QGIS/.ccache \
-w /QGIS \
-v ${GITHUB_WORKSPACE}:/QGIS \
@@ -170,14 +170,15 @@ function linkDep {
local name="$(basename $1)"
test -e "$destdir/$name" && return 0
test -e "$destdir/qgisplugins/$name" && return 0
[[ "$1" == *api-ms-win* ]] && return 0
[[ "$1" == *api-ms-win* ]] || [[ "$1" == *MSVCP*.dll ]] || [[ "$1" == *VCRUNTIME*.dll ]] && return 0
echo "${indent}${1}"
[ ! -e "$MINGWROOT/$1" ] && echo "Error: missing $MINGWROOT/$1" && return 1
mkdir -p "$destdir" || return 1
lnk "$MINGWROOT/$1" "$destdir/$name" || return 1
echo "${2:-bin}/$name: $(rpm -qf "$MINGWROOT/$1")" >> $installprefix/origins.txt
autoLinkDeps "$destdir/$name" "${indent} " || return 1
([ -e "$MINGWROOT/$1.debug" ] && lnk "$MINGWROOT/$1.debug" "$destdir/$name.debug") || ( ($DEBUG && echo "Warning: missing $name.debug") || :)
[ -e "/usr/lib/debug${MINGWROOT}/$1.debug" ] && lnk "/usr/lib/debug${MINGWROOT}/$1.debug" "$destdir/$name.debug" || :
[ -e "$MINGWROOT/$1.debug" ] && lnk "$MINGWROOT/$1.debug" "$destdir/$name.debug" || :
return 0
}

@@ -205,6 +206,10 @@ done
IFS=$SAVEIFS
)

# Gdal plugins
mkdir -p "$installprefix/lib/"
cp -a "$MINGWROOT/lib/gdalplugins" "$installprefix/lib/gdalplugins"

echo "Linking dependencies..."
binaries=$(find "$installprefix" -name '*.exe' -or -name '*.dll' -or -name '*.pyd')
for binary in $binaries; do
@@ -7,23 +7,18 @@ MAINTAINER Sandro Mani <manisandro@gmail.com>
RUN \
echo all > /etc/rpm/macros.image-language-conf && \
rm -f /etc/yum.repos.d/*modular* && \
dnf install -y --nogpgcheck 'dnf-command(config-manager)' && \
dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/smani/mingw-extras/repo/fedora-rawhide/smani-mingw-extras-fedora-rawhide.repo && \
dnf install -y --nogpgcheck \
mingw64-dlfcn \
mingw64-exiv2 \
ccache \
mingw64-gcc-c++ \
mingw64-gdal \
mingw64-gdb \
mingw64-GdbCrashHandler \
mingw64-GeographicLib \
mingw64-geos \
mingw64-gsl \
mingw64-libgomp \
mingw64-libzip \
mingw64-osgearth-qt5 \
mingw64-pacparser \
mingw64-postgresql \
mingw64-proj \
mingw64-python3 \
@@ -93,8 +88,5 @@ dnf install -y --nogpgcheck \
xorg-x11-server-Xvfb \
zip

RUN wget https://pkg.sourcepole.ch/kadas/mingw64-librsvg2-2.40.11-1.fc28.noarch.rpm
RUN dnf install -y mingw64-librsvg2-2.40.11-1.fc28.noarch.rpm

WORKDIR /workspace
VOLUME ["/workspace"]
@@ -114,7 +114,7 @@ void QgsAuthMethodRegistry::init()
typedef QgsAuthMethodMetadata *factory_function( );

#if defined(Q_OS_WIN) || defined(__CYGWIN__)
mLibraryDirectory.setNameFilters( QStringList( "authmethod_*.dll" ) );
mLibraryDirectory.setNameFilters( QStringList( "*authmethod_*.dll" ) );
#else
mLibraryDirectory.setNameFilters( QStringList( QStringLiteral( "*authmethod_*.so" ) ) );
#endif

0 comments on commit cf79561

Please sign in to comment.