[Mingw-w64-public] Sbuild update 5.0.1
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 S[mart|tupid] build[1] got a major update = About = sbuild is a set of scripts that build various free software packages for Windows from the source, starting with a GCC toolchain (cross-compiled) and MSYS2 core (cross-compiled), and ending with various applications (msys2-git, msys2-subversion, mingw-gdb), libraries and frameworks (GTK+, GNUnet, GStreamer). All buildscripts are written in simple-to-understand-style of POSIX shell language, and a few small utilities are in Python. = Release Highlights = == MSYS2 == Very few changes, mostly maintenance. == MinGW == GCC-4.9.0 came out, and this release brings it to sbuild. === Sanitizer === One of the new things that seem to be working is the sanitizer. Only Undefined Behaviour sanitizer works for now (Address sanitizer compiles, but fails to initialize properly; ktietz promised to look into it). To use it, add -fsanitize=undefined to C(XX)FLAGS, and add - -Wc,-fsanitize=undefined to LDFLAGS for each individual libtool library (or, if you're not using libtool, just add -fsanitize=undefined to gcc arguments for linking); Adding that to global LDFLAGS will *not* work, and putting unguarded -fsanitize=undefined into LDFLAGS will not work either (libtool will remove it). Hopefully, this situation will improve. === LTO === Another thing that may be of interest is LTO. Binutils in 5.0 has a hack[2] applied to it that enables static libraries with LTO to be linked, which allows LTO to be used in many real-life programs. To use LTO, add -flto to C(XX)FLAGS and LDFLAGS. Some packages fail to build with LTO. For a complete list of such packages, grep Gentoo forums. A visible side-effect of using LTO is that shared libraries may export more symbols than they used to. This can be improved by making use of dllexport/visibility machinery (like GTK+ does), -export-symbols deffile or - -export-symbols-regex regex for libtool. I don't have any benchmar results that would (or would not) show performance improvements due to LTO. Binaries sometimes come out smaller than they used to, and sometimes slightly bigger. Sadly, LTO completely botchers the debug info for the libraries built with it. Because currently i don't do separate debug builds (all builds are with - -g -O2 (rarely - -O3), and then debug info is split into separate files that are optional to install), this makes LTO much less usable. === Other updates === GNU Guile is still at 2.0.9, because 2.0.11 (the latest version) fails to build. I've been told that some people are working to fix this, so, hopefully, guile will be updated later on. In related news, gnutls-guile is now built again as part of gnutls. No idea whether it works or not though. All GStreamer packages got a major update to 1.3.1. Of note is the winks plugin in -bad, which allows GStreamer to receive video from cameras on W32. Also, gst-plugins-gl was merged into -bad, and is now available normally, without pulling unreleased git snapshots from GStreamer repositories. GTK+ received some W32 theme fixes upstream. The issue of RGBA windows and client-side decoration was looked into: as long as you're not using RDP (on client versions of Windows, where desktop composition over RDP does not work (or where graphic goes through a transition when RDP connection is made); server versions have a policy-adjustable option to enable desktop composition over RDP), and not using mirror display driver for VNC, GTK+ windows will retain their decorations. In any event, newly-created windows will pick up on the availability of desktop composition, and will be (un-)decorated accordingly. While new GTK+-3.x works on XP, its support is waning. I've only be able to do limited testing on Windows 8. GTK+ works, but there are some quirks to work out. Fontconfig got more options enabled by default, more Windows-compatible config files installed by default. Freetype2 is built with harfbuzz support. Hopefully, this improve font rendering when fontconfig backend is used. dlfcn-win32 was suddenly brought back to life - it received some patches upstream. Yay for the new maintainer! Mercurial is now built. There are some quirks to work out, but at least that's a start. Ruby is now built. I've used it to build webkitgtk, so it appears to be working to some degree. libassuan and libksba are built. These are needed for gnupg. Gnupg itself is not in the list yet, but it will be (buildscripts are available, just didn't have time or incentives to merge them). Though i should mention that current gnupg maintainer seems to regard any mingw+gcc+autotools build as unsupported, so it will be mostly for internal use only. == Issues that may have been fixed == xsltproc.exe from msys-xsltproc might segfault. Re-run the build from the last step. One of the patches to xsltproc was badly broken. It's fixed now. Whether this also fix the segfault remains to be seen. == Issues for which nothing is known == On one occasion
[Mingw-w64-public] [patch] lmaccess.h: Add USER_INFO_24
Hi, the below patch adds the missing USER_INFO_24 structure, which has been introduced with Windows 8/2012 per http://msdn.microsoft.com/en-us/library/windows/desktop/hh994455%28v=vs.85%29.aspx Ok to apply? Thanks, Corinna * lmaccess.h (struct _USER_INFO_24): Define. Index: lmaccess.h === --- lmaccess.h (revision 6615) +++ lmaccess.h (working copy) @@ -207,6 +207,14 @@ PSID usri23_user_sid; } USER_INFO_23,*PUSER_INFO_23,*LPUSER_INFO_23; + typedef struct _USER_INFO_24 { +BOOL usri24_internet_identity; +DWORD usri24_flags; +LPWSTR usri24_internet_provider_name; +LPWSTR usri24_internet_principal_name; +PSID usri24_user_sid; + } USER_INFO_24,*PUSER_INFO_24,*LPUSER_INFO_24; + typedef struct _USER_INFO_1003 { LPWSTR usri1003_password; } USER_INFO_1003,*PUSER_INFO_1003,*LPUSER_INFO_1003; pgpS62ZBlmOBD.pgp Description: PGP signature -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [patch] lmaccess.h: Add USER_INFO_24
Patch is ok. Thanks, Kai -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [patch] lmaccess.h: Add USER_INFO_24
On May 8 19:44, Kai Tietz wrote: Patch is ok. Thanks, applied. Corinna pgpkA06McgkcQ.pgp Description: PGP signature -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
[Mingw-w64-public] [PATCH] Various changes for ARM
Please review, i'll split it up and commit it. the tab before .globl is needed, otherwise it's not recognized on ARM. DECLSPEC_ALIGN(8) for the context seems to be hardly supported by our current toolchain Index: mingw-w64-crt/math/_chgsignl.S === --- mingw-w64-crt/math/_chgsignl.S (Revision 6615) +++ mingw-w64-crt/math/_chgsignl.S (Arbeitskopie) @@ -25,10 +25,10 @@ #else .align 4 #endif -.globl __MINGW_USYMBOL(_chgsignl) + .globl __MINGW_USYMBOL(_chgsignl) .def __MINGW_USYMBOL(_chgsignl); .scl 2; .type 32; .endef __MINGW_USYMBOL(_chgsignl): -#ifdef _WIN64 +#if defined(_AMD64_) movq (%rdx), %rax movq 8(%rdx), %rdx xorq $0x8000, %rdx @@ -36,7 +36,10 @@ movq %rdx, 8(%rcx) movq %rcx, %rax ret -#else +#elif defined(_ARM_) + vneg.f64 d0, d0 + bx lr +#elif defined(_X86_) movl 12(%esp),%eax xorl $0x8000,%eax movl %eax,12(%esp) Index: mingw-w64-headers/include/winnt.h === --- mingw-w64-headers/include/winnt.h (Revision 6615) +++ mingw-w64-headers/include/winnt.h (Arbeitskopie) @@ -1838,7 +1838,7 @@ LONGLONG High; } NEON128, *PNEON128; - typedef struct DECLSPEC_ALIGN(8) _CONTEXT { + typedef struct _CONTEXT { DWORD ContextFlags; DWORD R0; -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [PATCH] Various changes for ARM
Hi I would prefer here to use __x86_64__ __i386__ etc. Have you tested that your changes work for IA targets? Cheers Kai Am 08.05.2014 23:35 schrieb André Hentschel n...@dawncrow.de: Please review, i'll split it up and commit it. the tab before .globl is needed, otherwise it's not recognized on ARM. DECLSPEC_ALIGN(8) for the context seems to be hardly supported by our current toolchain -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] [PATCH] Various changes for ARM
Is this meant to run on ia64?: #if defined(_AMD64_) movq(%rdx), %rax movq8(%rdx), %rdx xorq$0x8000, %rdx movq%rax, (%rcx) movq%rdx, 8(%rcx) movq%rcx, %rax ret Am 09.05.2014 00:08, schrieb Kai Tietz: Hi I would prefer here to use __x86_64__ __i386__ etc. Have you tested that your changes work for IA targets? Cheers Kai Am 08.05.2014 23:35 schrieb André Hentschel n...@dawncrow.de mailto:n...@dawncrow.de: Please review, i'll split it up and commit it. the tab before .globl is needed, otherwise it's not recognized on ARM. DECLSPEC_ALIGN(8) for the context seems to be hardly supported by our current toolchain -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
[Mingw-w64-public] -console gone, some opt switches seem to force wWinMain
-console switch is gone, some optimization switches like -ftree-parallelize-loops=4 -ftree-loop-vectorize -ftree-slp-vectorize -floop-parallelize-all which must be combined with -O2 apparently, seem to somehow require a WinMain. why is this? console programs are quite capable of doing threads and making win32 calls and this should not be required. ib\libmingw32.a(lib64_libmingw32_a-crt0_w.o):crt0_w.c:(.text+0x18): undefined reference to `wWinMain' collect2.exe: error: ld returned 1 exit status COLLECT_GCC=f:\x86_64-4.9.0-release-win32-seh-rt_v3-rev1\mingw64\bin\g++.exe COLLECT_LTO_WRAPPER=f:/x86_64-4.9.0-release-win32-seh-rt_v3-rev1/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/4.9.0/lto-wrapper.exe Target: x86_64-w64-mingw32 Thread model: win32 gcc version 4.9.0 (x86_64-win32-seh-rev1, Built by MinGW-W64 project)COLLECT_GCC_OPTIONS='-v' '-save-temps' '-ftree-parallelize-loops=4' '-ftree-loop-vectorize' '-ftree-slp-vectorize' '-floop-parallelize-all' '-O2' '-m64' '-municode' '-static' '-fno-strict-aliasing' '-fwrapv' '-Wall' '-Wextra' '-std=c++11' '-o' 'gcc-substr-bug.exe' '-mtune=core2' '-march=nocona' '-mthreads' '-pthread' code is #include string #include iostream int main(void) { std::string searchIn=abc(a href=\def.html\def/a, searchFor=a href=\,equals==; size_t posOpenElement=searchIn.find(searchFor); //should be 4 std::coutposOpenElement=posOpenElement, should be 4std::endl; if (std::string::npos!=posOpenElement) { size_t posEquals=searchIn.find(equals,posOpenElement + searchFor.size());//should fail std::coutposEquals=posEquals, should be huge number (-1)std::endl; } return 0; } commandline is Thu 05/08/2014 15:36:58.22|d:\prj\tc-search\renumber-ids-2.0\tests|f:\x86_64-4.9.0-release-win32-seh-rt_v3-rev1\mingw64\bin\g++.exe -Wall -Wextra -v -save-temps -ftree-parallelize-loops=4 -ftree-loop-vectorize -ftree-slp-vectorize -floop-parallelize-all -O2 -m64 -municode -static -fno-strict-aliasing -fwrapv -lstdc++ -lmingw32 -Wall -W -Wextra -Xlinker -Map=gcc-substr-bug.map -std=c++11 -ogcc-substr-bug.exe gcc-substr-bug.cpp 2gcc-substr-bug.err on 64-bit windows 7. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB]-- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] -console gone, some opt switches seem to force wWinMain
hi folks, one of the things that is causing the problem is -municode. From: Jim Michaels jmich...@yahoo.com To: Mingw64 Users mingw-w64-public@lists.sourceforge.net Sent: Thursday, May 8, 2014 3:44 PM Subject: -console gone, some opt switches seem to force wWinMain -console switch is gone, some optimization switches like -ftree-parallelize-loops=4 -ftree-loop-vectorize -ftree-slp-vectorize -floop-parallelize-all which must be combined with -O2 apparently, seem to somehow require a WinMain. why is this? console programs are quite capable of doing threads and making win32 calls and this should not be required. ib\libmingw32.a(lib64_libmingw32_a-crt0_w.o):crt0_w.c:(.text+0x18): undefined reference to `wWinMain' collect2.exe: error: ld returned 1 exit status COLLECT_GCC=f:\x86_64-4.9.0-release-win32-seh-rt_v3-rev1\mingw64\bin\g++.exe COLLECT_LTO_WRAPPER=f:/x86_64-4.9.0-release-win32-seh-rt_v3-rev1/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/4.9.0/lto-wrapper.exe Target: x86_64-w64-mingw32 Thread model: win32 gcc version 4.9.0 (x86_64-win32-seh-rev1, Built by MinGW-W64 project)COLLECT_GCC_OPTIONS='-v' '-save-temps' '-ftree-parallelize-loops=4' '-ftree-loop-vectorize' '-ftree-slp-vectorize' '-floop-parallelize-all' '-O2' '-m64' '-municode' '-static' '-fno-strict-aliasing' '-fwrapv' '-Wall' '-Wextra' '-std=c++11' '-o' 'gcc-substr-bug.exe' '-mtune=core2' '-march=nocona' '-mthreads' '-pthread' code is #include string #include iostream int main(void) { std::string searchIn=abc(a href=\def.html\def/a, searchFor=a href=\,equals==; size_t posOpenElement=searchIn.find(searchFor); //should be 4 std::coutposOpenElement=posOpenElement, should be 4std::endl; if (std::string::npos!=posOpenElement) { size_t posEquals=searchIn.find(equals,posOpenElement + searchFor.size());//should fail std::coutposEquals=posEquals, should be huge number (-1)std::endl; } return 0; } commandline is Thu 05/08/2014 15:36:58.22|d:\prj\tc-search\renumber-ids-2.0\tests|f:\x86_64-4.9.0-release-win32-seh-rt_v3-rev1\mingw64\bin\g++.exe -Wall -Wextra -v -save-temps -ftree-parallelize-loops=4 -ftree-loop-vectorize -ftree-slp-vectorize -floop-parallelize-all -O2 -m64 -municode -static -fno-strict-aliasing -fwrapv -lstdc++ -lmingw32 -Wall -W -Wextra -Xlinker -Map=gcc-substr-bug.map -std=c++11 -ogcc-substr-bug.exe gcc-substr-bug.cpp 2gcc-substr-bug.err on 64-bit windows 7. - Jim Michaels jmich...@yahoo.com j...@renewalcomputerservices.com http://RenewalComputerServices.com http://JesusnJim.com (my personal site, has software) --- IEC Units: Computer RAM SSD measurements, microsoft disk size measurements (note: they will say GB or MB or KB or TB when it is IEC Units!): [KiB] [MiB] [GiB] [TiB] [2^10B=1,024^1B=1KiB] [2^20B=1,024^2B=1,048,576B=1MiB] [2^30B=1,024^3B=1,073,741,824B=1GiB] [2^40B=1,024^4B=1,099,511,627,776B=1TiB] [2^50B=1,024^5B=1,125,899,906,842,624B=1PiB] SI Units: Hard disk industry disk size measurements: [kB] [MB] [GB] [TB] [10^3B=1,000B=1kB] [10^6B=1,000,000B=1MB] [10^9B=1,000,000,000B=1GB] [10^12B=1,000,000,000,000B=1TB] [10^15B=1,000,000,000,000,000B=1PB] -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] -console gone, some opt switches seem to force wWinMain
Jim Michaels jmich...@yahoo.com writes: hi folks, one of the things that is causing the problem is -municode. Try replacing `main' with `wmain'. -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
Re: [Mingw-w64-public] r210215 - in /trunk/gcc: ChangeLog wide-int.cc
i686-w64-mingw32 daily build failed: error: unable to emulate 'TI' ... make[2]: Leaving directory `/home/cauchy/obj/native/gcc-4.10-win32/gcc/libdecnumber' make[2]: Entering directory `/home/cauchy/obj/native/gcc-4.10-win32/gcc/gcc' i686-w64-mingw32-g++ -c -g -O2 -DIN_GCC-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -I. -I. -I/home/cauchy/vcs/svn/gcc/trunk/gcc -I/home/cauchy/vcs/svn/gcc/trunk/gcc/. -I/home/cauchy/vcs/svn/gcc/trunk/gcc/../include -I/home/cauchy/vcs/svn/gcc/trunk/gcc/../libcpp/include -I/home/cauchy/obj/native/gcc-4.10-win32/gcc/./gmp -I/home/cauchy/vcs/svn/gcc/trunk/gmp -I/home/cauchy/obj/native/gcc-4.10-win32/gcc/./mpfr/src -I/home/cauchy/vcs/svn/gcc/trunk/mpfr/src -I/home/cauchy/vcs/svn/gcc/trunk/mpc/src -I/home/cauchy/vcs/svn/gcc/trunk/gcc/../libdecnumber -I/home/cauchy/vcs/svn/gcc/trunk/gcc/../libdecnumber/bid -I../libdecnumber -I/home/cauchy/vcs/svn/gcc/trunk/gcc/../libbacktrace -DCLOOG_INT_GMP -I/home/cauchy/obj/native/gcc-4.10-win32/gcc/./cloog/include -I/home/cauchy/vcs/svn/gcc/trunk/cloog/include -I/home/cauchy/vcs/svn/gcc/trunk/cloog/include -I/home/cauchy/obj/native/gcc-4.10-win32/gcc/./isl/include -I/home/cauchy/vcs/svn/gcc/trunk/isl/include -o wide-int.o -MT wide-int.o -MMD -MP -MF ./.deps/wide-int.TPo /home/cauchy/vcs/svn/gcc/trunk/gcc/wide-int.cc /home/cauchy/vcs/svn/gcc/trunk/gcc/wide-int.cc:37:56: error: unable to emulate 'TI' typedef unsigned int UTItype __attribute__ ((mode (TI))); ^ make[2]: *** [wide-int.o] Error 1 make[2]: Leaving directory `/home/cauchy/obj/native/gcc-4.10-win32/gcc/gcc' make[1]: *** [all-gcc] Error 2 make[1]: Leaving directory `/home/cauchy/obj/native/gcc-4.10-win32/gcc' make: *** [all] Error 2 On Thu, May 8, 2014 at 10:23 PM, ram...@gcc.gnu.org wrote: Author: ramana Date: Thu May 8 14:23:11 2014 New Revision: 210215 URL: http://gcc.gnu.org/viewcvs?rev=210215root=gccview=rev Log: Define UDWtype for longlong.h inclusion in wide-int.cc 2014-05-08 Ramana Radhakrishnan ramana.radhakrish...@arm.com * wide-int.cc (UTItype): Define. (UDWtype): Define for appropriate W_TYPE_SIZE. Modified: trunk/gcc/ChangeLog trunk/gcc/wide-int.cc -- Is your legacy SCM system holding you back? Join Perforce May 7 to find out: #149; 3 signs your SCM is hindering your productivity #149; Requirements for releasing software faster #149; Expert tips and advice for migrating your SCM now http://p.sf.net/sfu/perforce ___ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public