All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
@ 2013-05-21  8:57 Jungsoo Son
  2013-05-21  9:51 ` Wanlong Gao
  2013-05-21 10:33 ` chrubis
  0 siblings, 2 replies; 6+ messages in thread
From: Jungsoo Son @ 2013-05-21  8:57 UTC (permalink / raw)
  To: ltp-list


[-- Attachment #1.1: Type: text/plain, Size: 898 bytes --]

This patch fixes parallel build error. When use parallel build

with -j16 or -j8, $(CRITICAL_MAKEFILES) are created as empty file

because generate-makefiles is called several times. So need to

disable parallel build.

The following code can guarantee sequencial building.

.NOTPARALLEL: $(CRITICAL_MAKEFILES)

 

Signed-off-by: jungsoo.son <jungsoo.son@lge.com>

---

testcases/open_posix_testsuite/Makefile |    2 ++

1 file changed, 2 insertions(+)

 

diff --git a/testcases/open_posix_testsuite/Makefile
b/testcases/open_posix_testsuite/Makefile

index 9c61fa4..bce5cf3 100644

--- a/testcases/open_posix_testsuite/Makefile

+++ b/testcases/open_posix_testsuite/Makefile

@@ -110,5 +110,7 @@ $(CRITICAL_MAKEFILES): \

     $(top_srcdir)/LDLIBS

         @$(MAKE) generate-makefiles

+.NOTPARALLEL: $(CRITICAL_MAKEFILES)

+

#tests-pretty:

#        $(MAKE) all | column -t -s:

-- 

1.7.9.5


[-- Attachment #1.2: Type: text/html, Size: 4186 bytes --]

[-- Attachment #2: Type: text/plain, Size: 421 bytes --]

------------------------------------------------------------------------------
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_may

[-- Attachment #3: Type: text/plain, Size: 155 bytes --]

_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
  2013-05-21  8:57 [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES) Jungsoo Son
@ 2013-05-21  9:51 ` Wanlong Gao
  2013-05-21 10:33 ` chrubis
  1 sibling, 0 replies; 6+ messages in thread
From: Wanlong Gao @ 2013-05-21  9:51 UTC (permalink / raw)
  To: Jungsoo Son; +Cc: ltp-list

On 05/21/2013 04:57 PM, Jungsoo Son wrote:
> This patch fixes parallel build error. When use parallel build
> 
> with -j16 or -j8, $(CRITICAL_MAKEFILES) are created as empty file
> 
> because generate-makefiles is called several times. So need to
> 
> disable parallel build.
> 
> The following code can guarantee sequencial building.
> 
> .NOTPARALLEL: $(CRITICAL_MAKEFILES)
> 
>  
> 
> Signed-off-by: jungsoo.son <jungsoo.son@lge.com>

Acked-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>


> 
> ---
> 
> testcases/open_posix_testsuite/Makefile |    2 ++
> 
> 1 file changed, 2 insertions(+)
> 
>  
> 
> diff --git a/testcases/open_posix_testsuite/Makefile b/testcases/open_posix_testsuite/Makefile
> 
> index 9c61fa4..bce5cf3 100644
> 
> --- a/testcases/open_posix_testsuite/Makefile
> 
> +++ b/testcases/open_posix_testsuite/Makefile
> 
> @@ -110,5 +110,7 @@ $(CRITICAL_MAKEFILES): \
> 
>      $(top_srcdir)/LDLIBS
> 
>          @$(MAKE) generate-makefiles
> 
> +.NOTPARALLEL: $(CRITICAL_MAKEFILES)
> 
> +
> 
> #tests-pretty:
> 
> #        $(MAKE) all | column -t -s:
> 
> -- 
> 
> 1.7.9.5
> 
> 
> 
> ------------------------------------------------------------------------------
> 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_may
> 
> 
> 
> _______________________________________________
> Ltp-list mailing list
> Ltp-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/ltp-list
> 


------------------------------------------------------------------------------
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_may
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
  2013-05-21  8:57 [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES) Jungsoo Son
  2013-05-21  9:51 ` Wanlong Gao
@ 2013-05-21 10:33 ` chrubis
  2013-05-30 13:03   ` chrubis
  1 sibling, 1 reply; 6+ messages in thread
From: chrubis @ 2013-05-21 10:33 UTC (permalink / raw)
  To: Jungsoo Son; +Cc: ltp-list

Hi!
> This patch fixes parallel build error. When use parallel build
> 
> with -j16 or -j8, $(CRITICAL_MAKEFILES) are created as empty file
> 
> because generate-makefiles is called several times. So need to
> 
> disable parallel build.
> 
> The following code can guarantee sequencial building.
> 
> .NOTPARALLEL: $(CRITICAL_MAKEFILES)

The problem is that Open Posix Testsuite should stuck with POSIX make.
At least we promise that we will not break it actively. Now the 2008
POSIX make still does not support the idea of parallel build. I will
have a look what will other than GNU make implementations do with such
rule. If it would be ignored then we are fine adding it, if not we will
have to figure out how to detect GNU make and add the line accordingly.

-- 
Cyril Hrubis
chrubis@suse.cz

------------------------------------------------------------------------------
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_may
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
  2013-05-21 10:33 ` chrubis
@ 2013-05-30 13:03   ` chrubis
       [not found]     ` <006901ce5dda$30547c60$90fd7520$@lge.com>
  0 siblings, 1 reply; 6+ messages in thread
From: chrubis @ 2013-05-30 13:03 UTC (permalink / raw)
  To: Jungsoo Son; +Cc: ltp-list

Hi!
> > This patch fixes parallel build error. When use parallel build
> > 
> > with -j16 or -j8, $(CRITICAL_MAKEFILES) are created as empty file
> > 
> > because generate-makefiles is called several times. So need to
> > 
> > disable parallel build.
> > 
> > The following code can guarantee sequencial building.
> > 
> > .NOTPARALLEL: $(CRITICAL_MAKEFILES)
> 
> The problem is that Open Posix Testsuite should stuck with POSIX make.
> At least we promise that we will not break it actively. Now the 2008
> POSIX make still does not support the idea of parallel build. I will
> have a look what will other than GNU make implementations do with such
> rule. If it would be ignored then we are fine adding it, if not we will
> have to figure out how to detect GNU make and add the line accordingly.

I got a an idea how to fix this in portable fashion. The key is the
order of filenames the make looks for.

The gnu make tries GNUmakefile first, then makefile or Makefile.

So if we create GNUmakefile, which would include the Makefile and adds
the .NOTPARALLEL: target it should work both with both GNU make and any
other POSIX conforming make out there.

-- 
Cyril Hrubis
chrubis@suse.cz

------------------------------------------------------------------------------
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
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
       [not found]     ` <006901ce5dda$30547c60$90fd7520$@lge.com>
@ 2013-06-03 13:01       ` chrubis
  2013-06-05 16:11         ` chrubis
  0 siblings, 1 reply; 6+ messages in thread
From: chrubis @ 2013-06-03 13:01 UTC (permalink / raw)
  To: Jungsoo Son; +Cc: ltp-list

Hi!
> > I got a an idea how to fix this in portable fashion. The key is the order
> > of filenames the make looks for.
> > 
> > The gnu make tries GNUmakefile first, then makefile or Makefile.
> > 
> > So if we create GNUmakefile, which would include the Makefile and adds
> > the .NOTPARALLEL: target it should work both with both GNU make and any
> > other POSIX conforming make out there.
> 
> I think your idea is good. 
> But I think that the code to distinguish GNU make and other POSIX will makes
> the Makefile to be more complex.
> I do not wish to complicate the Makefile more than is necessary.
> How about using '-j1' without '.NOTPARALLEL:' option as follows.

Again the same problem as previously. The POSIX specification does not
require the -j option to exist as the standard does not take parallel
build into the account at all. And for the Open Posix part of LTP we
need to stick to the POSIX.

And looking at the POSIX spec again, the POSIX make does not even
support including files. So the only way how to fix this is to copy the
top level Makefile to GNUmakefile and add the line. :(

-- 
Cyril Hrubis
chrubis@suse.cz

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES)
  2013-06-03 13:01       ` chrubis
@ 2013-06-05 16:11         ` chrubis
  0 siblings, 0 replies; 6+ messages in thread
From: chrubis @ 2013-06-05 16:11 UTC (permalink / raw)
  To: Jungsoo Son; +Cc: ltp-list

Hi!
> > > I got a an idea how to fix this in portable fashion. The key is the order
> > > of filenames the make looks for.
> > > 
> > > The gnu make tries GNUmakefile first, then makefile or Makefile.
> > > 
> > > So if we create GNUmakefile, which would include the Makefile and adds
> > > the .NOTPARALLEL: target it should work both with both GNU make and any
> > > other POSIX conforming make out there.
> > 
> > I think your idea is good. 
> > But I think that the code to distinguish GNU make and other POSIX will makes
> > the Makefile to be more complex.
> > I do not wish to complicate the Makefile more than is necessary.
> > How about using '-j1' without '.NOTPARALLEL:' option as follows.
> 
> Again the same problem as previously. The POSIX specification does not
> require the -j option to exist as the standard does not take parallel
> build into the account at all. And for the Open Posix part of LTP we
> need to stick to the POSIX.
> 
> And looking at the POSIX spec again, the POSIX make does not even
> support including files. So the only way how to fix this is to copy the
> top level Makefile to GNUmakefile and add the line. :(

I've looked into the openposix Makefile and it allready contains non
conforming '-j1' options. I will have closer look at the build scripts
and Makefiles.

-- 
Cyril Hrubis
chrubis@suse.cz

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-06-05 16:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-21  8:57 [LTP] [PATCH] Makefile: Disable parallel build for $(CRITICAL_MAKEFILES) Jungsoo Son
2013-05-21  9:51 ` Wanlong Gao
2013-05-21 10:33 ` chrubis
2013-05-30 13:03   ` chrubis
     [not found]     ` <006901ce5dda$30547c60$90fd7520$@lge.com>
2013-06-03 13:01       ` chrubis
2013-06-05 16:11         ` chrubis

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.