mirror of
https://github.com/yuzu-emu/build-environments
synced 2024-11-22 11:23:46 +00:00
Add linux-mingw update for conan cross compiling as well
This commit is contained in:
parent
58cb2114b5
commit
b0e1a8e193
2 changed files with 47 additions and 7 deletions
|
@ -1,6 +1,8 @@
|
|||
FROM archlinux:latest
|
||||
MAINTAINER yuzu
|
||||
# Add mingw-repo "ownstuff" is a AUR with an up to date mingw64
|
||||
# Runs pacman -Syu twice in order to work around pacman issues where the first run only updates the current distro packages
|
||||
# and the second run actually pulls the updates from the repos.
|
||||
RUN useradd -m -s /bin/bash yuzu && mkdir -p /tmp/pkgs && \
|
||||
echo "[ownstuff]" >> /etc/pacman.conf && \
|
||||
echo "SigLevel = Optional TrustAll" >> /etc/pacman.conf && \
|
||||
|
@ -14,28 +16,40 @@ RUN useradd -m -s /bin/bash yuzu && mkdir -p /tmp/pkgs && \
|
|||
git \
|
||||
python-pip \
|
||||
python \
|
||||
python2 \
|
||||
ccache \
|
||||
p7zip \
|
||||
cmake \
|
||||
ninja \
|
||||
mingw-w64-boost \
|
||||
mingw-w64-gcc \
|
||||
mingw-w64-tools \
|
||||
mingw-w64-sdl2 \
|
||||
mingw-w64-lz4 \
|
||||
mingw-w64-opus \
|
||||
mingw-w64-qt5-base \
|
||||
mingw-w64-qt5-tools \
|
||||
mingw-w64-qt5-graphicaleffects \
|
||||
mingw-w64-qt5-multimedia \
|
||||
mingw-w64-qt5-winextras \
|
||||
python2 \
|
||||
mingw-w64-opus \
|
||||
mingw-w64-winpthreads && \
|
||||
mingw-w64-sdl2 \
|
||||
mingw-w64-tools \
|
||||
mingw-w64-winpthreads \
|
||||
mingw-w64-zlib \
|
||||
mingw-w64-zstd \
|
||||
&& \
|
||||
pacman -Scc --noconfirm && \
|
||||
rm -rf /usr/share/man/ /tmp/ /var/tmp/
|
||||
|
||||
# Setup extra mingw work arounds
|
||||
COPY mingw-setup.sh /tmp/
|
||||
RUN cd /tmp/ && bash -e mingw-setup.sh
|
||||
# Compatibility with the old Ubuntu MingW image
|
||||
RUN ln -s /usr/x86_64-w64-mingw32/lib/qt /usr/x86_64-w64-mingw32/lib/qt5
|
||||
|
||||
# Cleanup
|
||||
USER root
|
||||
# Install conan and add the mingw cross compile as the default profile
|
||||
RUN pip3 install conan
|
||||
COPY --chown=yuzu:yuzu default /home/yuzu/.conan/profiles/
|
||||
USER yuzu
|
||||
# Install/build the missing libs (uses the default mingw cross compile profile)
|
||||
RUN conan install catch2/2.11.0@ --build=missing && \
|
||||
conan install fmt/6.2.0@ --build=missing && \
|
||||
conan install nlohmann_json/3.7.3@ --build=missing
|
||||
|
|
26
linux-mingw/default
Normal file
26
linux-mingw/default
Normal file
|
@ -0,0 +1,26 @@
|
|||
toolchain=/usr/x86_64-w64-mingw32
|
||||
target_host=x86_64-w64-mingw32
|
||||
cc_compiler=gcc
|
||||
cxx_compiler=g++
|
||||
|
||||
[env]
|
||||
CONAN_CMAKE_FIND_ROOT_PATH=$toolchain
|
||||
CHOST=$target_host
|
||||
AR=$target_host-ar
|
||||
AS=$target_host-as
|
||||
RANLIB=$target_host-ranlib
|
||||
CC=$target_host-$cc_compiler
|
||||
CXX=$target_host-$cxx_compiler
|
||||
STRIP=$target_host-strip
|
||||
RC=$target_host-windres
|
||||
|
||||
[settings]
|
||||
# We are cross-building to Windows
|
||||
os=Windows
|
||||
arch=x86_64
|
||||
compiler=gcc
|
||||
|
||||
# Adjust to the gcc version of your MinGW package
|
||||
compiler.version=9
|
||||
compiler.libcxx=libstdc++11
|
||||
build_type=Release
|
Loading…
Reference in a new issue