Bug #43740 | Sometimes "make -jX" may generate wrong binary | ||
---|---|---|---|
Submitted: | 19 Mar 2009 0:49 | Modified: | 12 Aug 2009 13:29 |
Reporter: | Yasufumi Kinoshita | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: InnoDB Plugin storage engine | Severity: | S3 (Non-critical) |
Version: | 1.0.3 | OS: | Any |
Assigned to: | Vasil Dimov | CPU Architecture: | Any |
[19 Mar 2009 0:49]
Yasufumi Kinoshita
[19 Mar 2009 8:32]
Sveta Smirnova
Thank you for the report. I can not repeat described behavior. Please indicate accurate version of MySQL you use and provide all configure options
[19 Mar 2009 15:23]
Vasil Dimov
Grab!
[20 Mar 2009 8:48]
Vasil Dimov
Allright, now I know how to say "No such file or directory" in Japanese ;-)
[20 Mar 2009 9:16]
Vasil Dimov
There are a few approaches: 1. Disable any parallelism: --- cut --- --- Makefile.in.orig 2009-03-19 18:26:03.000000000 +0200 +++ Makefile.in 2009-03-20 09:36:32.000000000 +0200 @@ -708,6 +708,8 @@ pars/make_bison.sh pars/make_flex.sh \ pars/pars0grm.y pars/pars0lex.l +.NOTPARALLEL: + check_have_atomic_pthread_t: if $(COMPILE) ut/ut0auxconf.c -o /dev/null ; then \ echo '#define HAVE_ATOMIC_PTHREAD_T' > include/ut0auxconf.h ; \ --- cut --- 2. Build all-am after the check using sub-make: --- cut --- --- Makefile.in.orig 2009-03-19 18:26:03.000000000 +0200 +++ Makefile.in 2009-03-20 10:26:50.000000000 +0200 @@ -712,8 +712,9 @@ if $(COMPILE) ut/ut0auxconf.c -o /dev/null ; then \ echo '#define HAVE_ATOMIC_PTHREAD_T' > include/ut0auxconf.h ; \ fi + $(MAKE) all-am -all: check_have_atomic_pthread_t all-am +all: check_have_atomic_pthread_t .SUFFIXES: .SUFFIXES: .c .cc .lo .o .obj --- cut --- 3. Hook the check target as a dependency for every object file instead of a dependency for "all": --- cut --- --- Makefile.in.orig 2009-03-19 18:26:03.000000000 +0200 +++ Makefile.in 2009-03-20 10:50:46.000000000 +0200 @@ -713,7 +713,9 @@ echo '#define HAVE_ATOMIC_PTHREAD_T' > include/ut0auxconf.h ; \ fi -all: check_have_atomic_pthread_t all-am +am_libinnobase_a_OBJECTS: check_have_atomic_pthread_t + +all: all-am .SUFFIXES: .SUFFIXES: .c .cc .lo .o .obj --- cut ---
[12 Aug 2009 13:29]
Calvin Sun
Fixed in 1.0.4.