Re: [Mingw-w64-public] Lack test-driver when make check mingw64-crt svn 5830

2013-04-30 Thread NightStrike
On Mon, Apr 29, 2013 at 8:34 AM, xunxun xunxun1...@gmail.com wrote:
 It shows:

 make  check-TESTS
 make[2]: Entering directory `/e/gnu/mingw64/svn/mingw-w64-crt'
 make[3]: Entering directory `/e/gnu/mingw64/svn/mingw-w64-crt'
 /bin/sh: ./build-aux/test-driver: No such file or directory
 make[3]: *** [testcases/tstmainc.log] Error 127
 make[3]: Leaving directory `/e/gnu/mingw64/svn/mingw-w64-crt'
 make[2]: *** [check-TESTS] Error 2
 make[2]: Leaving directory `/e/gnu/mingw64/svn/mingw-w64-crt'
 make[1]: *** [check-am] Error 2
 make[1]: Leaving directory `/e/gnu/mingw64/svn/mingw-w64-crt'
 make: *** [check] Error 2


 Maybe we should copy test-driver from winpthreads/build-aux/test-driver

Committed revision 5831.  Updated all the build-aux files.

--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with 2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] MinGW-builds scrips now provide the ability to build Python only!

2013-04-30 Thread NightStrike
On Wed, Apr 24, 2013 at 9:36 AM, niXman i.nix...@gmail.com wrote:
 Hi,

 According to numerous questions about how to build Python using
 mingw/mingw-w64, I decided to add in MinGW-builds cripts key
 '--python-only=x.y.z', which allows to use MinGW-builds scripts to
 build Python only.

 Examples:
 $ ./build --python-only=2.7.3 x32 # for building python-2.7.3, i686
 $ ./build --python-only=2.7.3 x32 x64 # for building python-2.7.3,
 i686  x86_64

 At the moment, the following Python version: 2.7.3, 2.7.4, 3.3.0

 Currently, this functional is in 'develop' branch of MinGW-builds Git
 repository:
 https://github.com/niXman/mingw-builds/tree/develop

Thanks!

--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with 2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] OpenMP-related hangup with winpthreads

2013-04-30 Thread xunxun
于 2013/4/24 星期三 19:12, LRN 写道:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 msgmerge.exe (from gettext, i guess) hangs up, consuming 100% of a CPU
 core, this is the backtrace:
 #0  0x74d53b64 in SleepEx () from C:\Windows\syswow64\KernelBase.dll
 #1  0x74d54498 in Sleep () from C:\Windows\syswow64\KernelBase.dll
 #2  0x6494406b in _spin_lite_lock (l=0x64943003 mutex_ref+19) at
 ../winpthreads-svn-r5792/src/spinlock.c:256
 #3  0x0001 in ?? ()
 #4  0x64943003 in mutex_ref (m=0x11, m@entry=0x534fb4) at
 ../winpthreads-svn-r5792/src/mutex.c:60
 #5  0x6494317f in pthread_mutex_lock_intern (timeout=4294967295,
 m=0x534fb4) at ../winpthreads-svn-r5792/src/mutex.c:236
 #6  pthread_mutex_lock (m=m@entry=0x534fb4) at
 ../winpthreads-svn-r5792/src/mutex.c:223
 #7  0x64943482 in rwlock_gain_both_locks
 (rwlock=rwlock@entry=0x534fa0) at
 ../winpthreads-svn-r5792/src/rwlock.c:107
 #8  0x64943b5e in pthread_rwlock_wrlock
 (rwlock_=rwlock_@entry=0x6494f08c) at
 ../winpthreads-svn-r5792/src/rwlock.c:430
 #9  0x64944f26 in pthread_key_delete (key=0) at
 ../winpthreads-svn-r5792/src/thread.c:739
 #10 0x6360da61 in team_destructor () from f:\s31\mingw\bin\libgomp-1.dll
 #11 0x in ?? ()

 I'm using an svn-r5792 version of winpthreads + libgomp patches from
 ktietz.
Where is the libgomp patches?


 This hangup happened twice already. Once when i was building gdb (at
 configure time, when it was creating po/Makefile), another - when i
 was building gstreamer-1.0-1.0.6 (at configure time, while checking
 for msgmerge...).

 Command line in both cases was msgmerge.exe --update -q nul nul or
 something similar.

 The code that spins is:
 while (tmp  l-cur)
Sleep (0);

 tmp is a small integer (9 and 37 in two cases i observed), l-cur is a
 large integer (all 4 bytes are non-zero).

 -BEGIN PGP SIGNATURE-
 Version: GnuPG v1.4.11 (MingW32)
 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

 iQEcBAEBAgAGBQJRd740AAoJEOs4Jb6SI2Cw22EIANMAaktyUjq9EjYysmFX7R6Q
 Dir0haQ1BivbOsRQnR493ciJWRhbZCVynl3zze06N5oSB1Rb2FT95wOvzfHwvGeN
 9/FBCDABOhHgATlA6Xkfj+UCL+g9Wfi6AGbXb69Vwz8FUz4JPPFcysDVNLclg/Vq
 lACg0XgUZ3JoC8NXKBECPhGZcbLJI8iecS63pN7q9Vg9B4y9aSr6789i/6eslppV
 gP0iYbwTa4cmyWM6U82iOKkK9lThjzlzV0FeMfHIsqTa9jP+T3SwD5TiyBmpbB0q
 mpePhFy3VhSJh2gKHWeQWM9Ya2SG+o9UNpBlwqDBgKjmBSjRov8fulPi7cOlffY=
 =nYi+
 -END PGP SIGNATURE-

 --
 Try New Relic Now  We'll Send You this Cool Shirt
 New Relic is the only SaaS-based application performance monitoring service
 that delivers powerful full stack analytics. Optimize and monitor your
 browser, app,  servers with just a few lines of code. Try New Relic
 and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr
 ___
 Mingw-w64-public mailing list
 Mingw-w64-public@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


-- 
Best Regards,
xunxun


--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with 2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] OpenMP-related hangup with winpthreads

2013-04-30 Thread xunxun
于 2013/4/30 星期二 23:18, xunxun 写道:


 I'm using an svn-r5792 version of winpthreads + libgomp patches from
 ktietz.
 Where is the libgomp patches?

And I remembered Kai recommended to change libgomp team.c team = 
gomp_malloc (size) to team = gomp_malloc_cleared (size) ago.

-- 
Best Regards,
xunxun


--
Introducing AppDynamics Lite, a free troubleshooting tool for Java/.NET
Get 100% visibility into your production application - at no cost.
Code-level diagnostics for performance bottlenecks with 2% overhead
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap1
___
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public


Re: [Mingw-w64-public] OpenMP-related hangup with winpthreads

2013-04-30 Thread LRN
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On 30.04.2013 19:18, xunxun wrote:
 于 2013/4/24 星期三 19:12, LRN 写道:
 msgmerge.exe (from gettext, i guess) hangs up, consuming 100% of a CPU
 core, this is the backtrace:
 #0  0x74d53b64 in SleepEx () from C:\Windows\syswow64\KernelBase.dll
 #1  0x74d54498 in Sleep () from C:\Windows\syswow64\KernelBase.dll
 #2  0x6494406b in _spin_lite_lock (l=0x64943003 mutex_ref+19) at
 ../winpthreads-svn-r5792/src/spinlock.c:256
 #3  0x0001 in ?? ()
 #4  0x64943003 in mutex_ref (m=0x11, m@entry=0x534fb4) at
 ../winpthreads-svn-r5792/src/mutex.c:60
 #5  0x6494317f in pthread_mutex_lock_intern (timeout=4294967295,
 m=0x534fb4) at ../winpthreads-svn-r5792/src/mutex.c:236
 #6  pthread_mutex_lock (m=m@entry=0x534fb4) at
 ../winpthreads-svn-r5792/src/mutex.c:223
 #7  0x64943482 in rwlock_gain_both_locks
 (rwlock=rwlock@entry=0x534fa0) at
 ../winpthreads-svn-r5792/src/rwlock.c:107
 #8  0x64943b5e in pthread_rwlock_wrlock
 (rwlock_=rwlock_@entry=0x6494f08c) at
 ../winpthreads-svn-r5792/src/rwlock.c:430
 #9  0x64944f26 in pthread_key_delete (key=0) at
 ../winpthreads-svn-r5792/src/thread.c:739
 #10 0x6360da61 in team_destructor () from f:\s31\mingw\bin\libgomp-1.dll
 #11 0x in ?? ()
 
 I'm using an svn-r5792 version of winpthreads + libgomp patches from
 ktietz.
 Where is the libgomp patches?

He pastebinned that patch at 2013-04-22 15:24:19 (that pastebin is
no longer alive, so i've attached the copy that i've got back then).
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.11 (MingW32)

iQEcBAEBAgAGBQJRgBe8AAoJEOs4Jb6SI2Cw5JkH/iXMAh3sNF/xo5em8WcnjAMz
Ew+ABAu53BBnw4Bxwvmyt/5tm7f6REhtxMPqwO8JcWDYtO05cWx7lV7VV+aTeldi
BNvbQMqwrvdr17VKVrTPkq1sTGTDpnB+rPs8eUfPy+B4bACvbj20x9cZMqbJY1ih
LZEeKWTvBgQ9DLb63BmKejem5XD34iITBmi5Vqh5+d8X/Knhnrb/Tk5XY2L0znI0
oMUL6ACblH2EI5uuCGNrL71oO9E2ysBJwtYYAa7UnNoma+2FZWdDdDH8Vf46Ed4g
HJc70GGp09sMi+vabVwUAI2/09J7a8NAF/WXTQ8NIJkpvhGvINIwpg9hrVUlze8=
=g7W6
-END PGP SIGNATURE-
Index: libgomp.h
===
--- a/libgomp/libgomp.h   (Revision 198124)
+++ b/libgomp/libgomp.h   (Arbeitskopie)
@@ -378,9 +378,20 @@ static inline struct gomp_thread *gomp_thread (voi
 }
 #else
 extern pthread_key_t gomp_tls_key;
+extern void initialize_team (void);
+extern void gomp_fatal (const char *, ...)
+   __attribute__((noreturn, format (printf, 1, 2)));
 static inline struct gomp_thread *gomp_thread (void)
 {
-  return pthread_getspecific (gomp_tls_key);
+  struct gomp_thread* GompThread = pthread_getspecific (gomp_tls_key);
+  if (!GompThread) {
+initialize_team();
+GompThread = pthread_getspecific (gomp_tls_key);
+if (!GompThread) {
+  gomp_fatal(Uncorrectable NULL gomp_thread());
+}
+  }
+  return GompThread;
 }
 #endif
 
Index: team.c
===
--- a/libgomp/team.c  (Revision 198124)
+++ b/libgomp/team.c  (Arbeitskopie)
@@ -72,9 +72,12 @@ gomp_thread_start (void *xdata)
 #ifdef HAVE_TLS
   thr = gomp_tls_data;
 #else
-  struct gomp_thread local_thr;
-  thr = local_thr;
-  pthread_setspecific (gomp_tls_key, thr);
+  struct gomp_thread *Ptr_initial_thread_tls_data;
+  Ptr_initial_thread_tls_data =
+(struct gomp_thread*) calloc(1,sizeof(struct gomp_thread));
+
+  if (!KeysCreated) pthread_key_create (gomp_tls_key, NULL);
+  pthread_setspecific (gomp_tls_key, Ptr_initial_thread_tls_data);
 #endif
   gomp_sem_init (thr-release, 0);
 
@@ -253,6 +256,9 @@ gomp_free_thread (void *arg __attribute__((unused)
   gomp_end_task ();
   free (task);
 }
+#ifndef HAVE_TLS
+  free(pthread_getspecific (gomp_tls_key));
+#endif
 }
 
 /* Launch a team.  */
@@ -529,25 +535,32 @@ gomp_team_end (void)
 
 /* Constructors for this file.  */
 
-static void __attribute__((constructor))
+static short KeysCreated = 0;
+
+void __attribute__((constructor))
 initialize_team (void)
 {
   struct gomp_thread *thr;
 
 #ifndef HAVE_TLS
-  static struct gomp_thread initial_thread_tls_data;
+  struct gomp_thread *Ptr_initial_thread_tls_data;
+  Ptr_initial_thread_tls_data =
+(struct gomp_thread*) calloc(1,sizeof(struct gomp_thread));
 
-  pthread_key_create (gomp_tls_key, NULL);
-  pthread_setspecific (gomp_tls_key, initial_thread_tls_data);
+  if (!KeysCreated) pthread_key_create (gomp_tls_key, NULL);
+  pthread_setspecific (gomp_tls_key, Ptr_initial_thread_tls_data);
 #endif
 
-  if (pthread_key_create (gomp_thread_destructor, gomp_free_thread) != 0)
-gomp_fatal (could not create thread pool destructor.);
+  if (!KeysCreated 
+  pthread_key_create (gomp_thread_destructor, gomp_free_thread) != 0)
+  gomp_fatal (could not create thread pool destructor.);
 
+  KeysCreated = 1;
+
 #ifdef HAVE_TLS
   thr = gomp_tls_data;
 #else
-  thr = initial_thread_tls_data;
+  thr = Ptr_initial_thread_tls_data;
 #endif
   gomp_sem_init (thr-release, 0);
 }
Index: testsuite/config/default.exp