WineBarrels-BasePlatforms/BasePlatform/v2/sdk/mingw.yaml

262 lines
8.1 KiB
YAML

name: mingw-meta
modules:
# Headers
- name: mingw-headers-32bit
sources: &MINGW_SOURCES
- type: archive
url: https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v8.0.0.tar.bz2
sha256: 44c740ea6ab3924bc3aa169bad11ad3c5766c5c8459e3126d44eabb8735a5762
subdir: mingw-w64-headers
config-opts:
- --target=i686-w64-mingw32
- --enable-sdk=all
- --enable-secure-api
- --prefix=/usr/i686-w64-mingw32
builddir: true
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-headers-64bit
sources: *MINGW_SOURCES
subdir: mingw-w64-headers
config-opts:
- --target=x86_64-w64-mingw32
- --enable-sdk=all
- --enable-secure-api
- --prefix=/usr/x86_64-w64-mingw32
builddir: true
only-arches:
- x86_64
cleanup-platform:
- "*"
# GCC only compiler
- name: mingw-gcc-pass1-32bit
sources: &GCC_SOURCES
- type: archive
url: https://ftp.gnu.org/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.xz
sha256: b8dd4368bb9c7f0b98188317ee0254dd8cc99d1e3a18d0ff146c855fe16c1d8c
- type: archive
url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.0.tar.lz
sha256: 3f33f127bcb6b2c3601676cd3281df45824b148cbf688b73c0fc8248793667d9
dest: gmp
- type: archive
url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.xz
sha256: 0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f
dest: mpfr
- type: archive
url: https://ftp.gnu.org/gnu/mpc/mpc-1.2.0.tar.gz
sha256: e90f2d99553a9c19911abdb4305bf8217106a957e3994436428572c8dfe8fda6
dest: mpc
config-opts: &GCC_CONF_32BIT
- --target=i686-w64-mingw32
- --disable-multilib
- --disable-shared
- --enable-cet=auto
- --enable-languages=c,c++,d,lto
- --enable-libstdcxx-time=yes
- --enable-libstdcxx-filesystem-ts=yes
- --enable-lto
- --enable-plugin
- --enable-static
- --with-system-zlib
builddir: true
no-make-install: true
build-options:
make-args:
- all-gcc
post-install:
- make install-gcc
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-gcc-pass1-64bit
sources: *GCC_SOURCES
config-opts: &GCC_CONF_64BIT
- --target=x86_64-w64-mingw32
- --disable-multilib
- --disable-shared
- --enable-cet=auto
- --enable-languages=c,c++,d,lto
- --enable-libstdcxx-time=yes
- --enable-libstdcxx-filesystem-ts=yes
- --enable-lto
- --enable-plugin
- --enable-static
- --with-system-zlib
builddir: true
no-make-install: true
build-options:
make-args:
- all-gcc
post-install:
- make install-gcc
only-arches:
- x86_64
cleanup-platform:
- "*"
# MinGW CRT pass
- name: mingw-crt-32bit
sources: *MINGW_SOURCES
subdir: mingw-w64-crt
config-opts:
- --host=i686-w64-mingw32
- --target=i686-w64-mingw32
- --disable-lib64
- --disable-shared
- --enable-lib32
- --enable-static
- --enable-wildcard
- --prefix=/usr/i686-w64-mingw32
builddir: true
build-options:
cflags-override: true
cxxflags-override: true
ldflags-override: true
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-crt-64bit
sources: *MINGW_SOURCES
subdir: mingw-w64-crt
config-opts:
- --host=x86_64-w64-mingw32
- --target=x86_64-w64-mingw32
- --disable-lib32
- --disable-shared
- --enable-lib64
- --enable-static
- --enable-wildcard
- --prefix=/usr/x86_64-w64-mingw32
builddir: true
build-options:
cflags-override: true
cxxflags-override: true
ldflags-override: true
only-arches:
- x86_64
cleanup-platform:
- "*"
# GCC pass 2 full
- name: mingw-gcc-pass2-32bit
sources: *GCC_SOURCES
config-opts: *GCC_CONF_32BIT
builddir: true
ensure-writable:
- /lib/*/gcc/*/*/install-tools/*.conf
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-gcc-pass2-64bit
sources: *GCC_SOURCES
config-opts: *GCC_CONF_64BIT
builddir: true
ensure-writable:
- /lib/*/gcc/*/*/install-tools/*.conf
only-arches:
- x86_64
cleanup-platform:
- "*"
# MinGW Winpthreads
- name: mingw-winpthreads-32bit
sources: *MINGW_SOURCES
subdir: mingw-w64-libraries/winpthreads
config-opts:
- --host=i686-w64-mingw32
- --target=i686-w64-mingw32
- --disable-shared
- --enable-static
builddir: true
build-options:
cflags-override: true
cxxflags-override: true
ldflags-override: true
libdir: /usr/i686-w64-mingw32/lib
prefix: /usr/i686-w64-mingw32
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-winpthreads-64bit
sources: *MINGW_SOURCES
subdir: mingw-w64-libraries/winpthreads
config-opts:
- --host=x86_64-w64-mingw32
- --target=x86_64-w64-mingw32
- --disable-shared
- --enable-static
builddir: true
build-options:
cflags-override: true
cxxflags-override: true
ldflags-override: true
libdir: /usr/x86_64-w64-mingw32/lib
prefix: /usr/x86_64-w64-mingw32
only-arches:
- x86_64
cleanup-platform:
- "*"
# GCC full
- name: mingw-gcc-32bit
sources: *GCC_SOURCES
config-opts:
- --target=i686-w64-mingw32
- --disable-multilib
- --disable-shared
- --enable-cet=auto
- --enable-languages=c,c++,d,lto
- --enable-libstdcxx-time=yes
- --enable-libstdcxx-filesystem-ts=yes
- --enable-lto
- --enable-plugin
- --enable-static
- --enable-threads=posix
- --with-system-zlib
builddir: true
build-options:
prepend-ld-library-path: /usr/i686-w64-mingw32/lib
ensure-writable:
- /lib/*/gcc/*/*/install-tools/*.conf
only-arches:
- i386
- x86_64
cleanup-platform:
- "*"
- name: mingw-gcc-64bit
sources: *GCC_SOURCES
config-opts:
- --target=x86_64-w64-mingw32
- --disable-multilib
- --disable-shared
- --enable-cet=auto
- --enable-languages=c,c++,d,lto
- --enable-libstdcxx-time=yes
- --enable-libstdcxx-filesystem-ts=yes
- --enable-lto
- --enable-plugin
- --enable-static
- --enable-threads=posix
- --with-system-zlib
builddir: true
build-options:
prepend-ld-library-path: /usr/x86_64-w64-mingw32/lib
ensure-writable:
- /lib/*/gcc/*/*/install-tools/*.conf
only-arches:
- x86_64
cleanup-platform:
- "*"