Package Details: mingw-w64-meson 1-10

Git Clone URL: https://aur.archlinux.org/mingw-w64-meson.git (read-only)
Package Base: mingw-w64-meson
Description: Meson wrapper for MinGW (mingw-w64)
Upstream URL: http://fedoraproject.org/wiki/MinGW
Licenses: GPL
Submitter: drakkan
Maintainer: drakkan
Last Packager: drakkan
Votes: 5
Popularity: 0.035492
First Submitted: 2018-04-23 10:40
Last Updated: 2019-05-05 18:10

Latest Comments

1 2 Next › Last »

drakkan commented on 2019-01-05 12:06

@xantares, ok I'll do some test with these flags

c_args = ['-D_FORTIFY_SOURCE=2', '-fno-plt', '-fexceptions', '--param=ssp-buffer-size=4']
cpp_args = ['-D_FORTIFY_SOURCE=2', '-fno-plt', '-fexceptions', '--param=ssp-buffer-size=4']

and I'll push the changes if all is fine.

Please note that with meson the flags -O2 -g ecc.. are added by buildtype:

  • buildtype release will add -O3
  • buildtype debug will add -O0 -g

xantares commented on 2019-01-05 09:34

hi, you may want to update the flags here to add "fno-plt" like in w64-cmake

drakkan commented on 2018-12-22 18:22

@Martchus, we could add a new package (for example something like mingw-w64-env) that defines default mingw env vars and then modify mingw meson/cmake/configure to read these vars from the file provided by that package.

Martchus commented on 2018-12-22 17:50

Not having -g is good enough for me right now. But good to know about the environment variable.

drakkan commented on 2018-12-22 17:32

@Martchus, actually you can set CROSS_FILE env var that points to a different cross file. This should be enough for egde cases.

I agree that defaults flags should be consistent in mingw-w64-configure, cmake and meson, so I have no problem to change the meson defaults if we agree so.

Maybe we can do something similar to fedora

https://src.fedoraproject.org/fork/qulogic/rpms/mingw-filesystem/blob/master/f/macros.mingw64#_154

I can remove c_args and cpp_args from the cross file and so the env var should be used

Martchus commented on 2018-12-22 14:16

Since this package also hard codes linker flags: https://aur.archlinux.org/packages/mingw-w64-cmake/#comment-675194

Maybe it is not so easy to make the flags configurable via environment variables in case of meson. But the defaults could still be adjusted. The good thing is that the build flag which is my main concern (-g) isn't present in your package anyways.

drakkan commented on 2018-09-03 16:05

I just compiled mingw-w64-gcc and retested glib complitation and it works for me.

Anyway your patch should not hurts, so I think I'll apply it later today, thanks!

Martchus commented on 2018-09-03 14:20

Could you git am this patch: https://martchus.no-ip.biz/shares/a4f78bd3d1154882e0feb89711c615/0001-Use-gcc-ar-instead-of-ar.patch ?

See recent comments under https://aur.archlinux.org/packages/mingw-w64-glib2 for details.

jackoneill commented on 2018-06-12 20:23

And probably -Wall interferes with the --warnlevel parameter.

jackoneill commented on 2018-06-12 20:05

Hi! The -O2 and -g compiler parameters interfere with meson's --buildtype parameter.

Example of a compile command with --buildtype=release:

i686-w64-mingw32-g++ -Idecross@sha -I. -I.. -I/usr/i686-w64-mingw32/include -I/usr/include/vapoursynth -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++11 -O3 -Wall -Wextra -Wshadow -mfpmath=sse -msse2 -mstackrealign -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -MD -MQ 'decross@sha/src_decross.cpp.obj' -MF 'decross@sha/src_decross.cpp.obj.d' -o 'decross@sha/src_decross.cpp.obj' -c ../src/decross.cpp

And with --buildtype=debug:

i686-w64-mingw32-g++ -Idecross@sha -I. -I.. -I/usr/i686-w64-mingw32/include -I/usr/include/vapoursynth -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++11 -O0 -g -Wall -Wextra -Wshadow -mfpmath=sse -msse2 -mstackrealign -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -MD -MQ 'decross@sha/src_decross.cpp.obj' -MF 'decross@sha/src_decross.cpp.obj.d' -o 'decross@sha/src_decross.cpp.obj' -c ../src/decross.cpp

In both cases the compiler uses -O2 because it appears later.