[LTP] ltp-full-20160510 compile failed
Jan Stancek
jstancek@redhat.com
Wed Jun 8 09:42:28 CEST 2016
----- Original Message -----
> From: "Cyril Hrubis" <chrubis@suse.cz>
> To: ltp@lists.linux.it
> Cc: "Han Pingtian" <hanpt@linux.vnet.ibm.com>, "Jan Stancek" <jstancek@redhat.com>
> Sent: Tuesday, 7 June, 2016 6:12:58 PM
> Subject: Re: [LTP] ltp-full-20160510 compile failed
>
> Hi!
> > Just non-parallel build for the Makefiles as far as I remember.
> >
> > Sorry that this issue was left unsolved, I will try to look into it
> > again. Until then you can workaround it by forcing the nonparallel build
> > for CRITICAL_MAKEFILES as does the patch in the email thread.
>
> Looking at the problem again, the Makefile in question is wrong.
>
> What it does (simplified) is:
>
> CRITICAL_MAKEFILES=conformance functional stress
>
> all: $(CRITICAL_MAKEFILES)
>
> $(CRITICAL_MAKEFILES):
> $(MAKE) generate-makefiles
>
>
> No wonder that it runs $(MAKE) generate-makefiles for each Makefile in
> CRITICAL_MAKEFILES.
>
> Well it runs only two instances of the generate-makefiles.sh script
> because there is a typo, the CRITICAL_SECTION_MAKEFILE should probably
> have been CRITICAL_STRESS_MAKEFILE.
>
> And as it looks to me, the original intend was to pass the directory
> (i.e. conformance, functional or stress) to the generate-makefiles.sh
> script and subsequently to the locate-test script.
>
> The obvious fix would be changing the makefile to depend only on single
> critical Makefile in order to figure out if Makefiles were generated or
> not.
>
> For me following patch seems to fix the issue.
>
> Jan: Can you have a look?
ACK. Worked for me.
I keep thinking if we can avoid all this makefile
generation.
> Han: Does this patch work for you?
>
> diff --git a/testcases/open_posix_testsuite/Makefile
> b/testcases/open_posix_testsuite/Makefile
> index 500ddc2..e1c7bcd 100644
> --- a/testcases/open_posix_testsuite/Makefile
> +++ b/testcases/open_posix_testsuite/Makefile
> @@ -6,13 +6,7 @@
>
> # Makefiles that are considered critical to execution; if they don't exist
> # all of the Makefiles will be rebuilt by default.
> -CRITICAL_CONFORMANCE_MAKEFILE= conformance/interfaces/timer_settime/Makefile
> -CRITICAL_FUNCTIONAL_MAKEFILE= functional/threads/pi_test/Makefile
> -CRITICAL_SECTION_MAKEFILE= stress/threads/sem_open/Makefile
> -
> -CRITICAL_MAKEFILES= $(CRITICAL_CONFORMANCE_MAKEFILE) \
> - $(CRITICAL_FUNCTIONAL_MAKEFILE) \
> - $(CRITICAL_SECTION_MAKEFILE)
> +CRITICAL_MAKEFILE= conformance/interfaces/timer_settime/Makefile
>
> # The default logfile for the tests.
> LOGFILE?= logfile
> @@ -44,7 +38,7 @@ ifeq ($(shell uname -s), Linux)
> include Makefile.linux
> endif
>
> -clean: $(CRITICAL_MAKEFILES)
> +clean: $(CRITICAL_MAKEFILE)
> @rm -f $(LOGFILE)*
> @for dir in $(SUBDIRS) tools; do \
> $(MAKE) -C $$dir clean >/dev/null; \
> @@ -67,7 +61,7 @@ install: bin-install conformance-install functional-install
> stress-install
> test: conformance-test functional-test stress-test
>
> # Test build and execution targets.
> -conformance-all: $(CRITICAL_CONFORMANCE_MAKEFILE)
> +conformance-all: $(CRITICAL_MAKEFILE)
> @rm -f `if echo "$(LOGFILE)" | grep -q '^/'; then echo "$(LOGFILE)"; else
> echo "\`pwd\`/$(LOGFILE)"; fi`.$@
> @$(BUILD_MAKE) -C conformance -j1 all
>
> @@ -78,7 +72,7 @@ conformance-test:
> @rm -f `if echo "$(LOGFILE)" | grep -q '^/'; then echo "$(LOGFILE)"; else
> echo "\`pwd\`/$(LOGFILE)"; fi`.$@
> @$(TEST_MAKE) -C conformance test
>
> -functional-all: $(CRITICAL_FUNCTIONAL_MAKEFILE)
> +functional-all: $(CRITICAL_MAKEFILE)
> @rm -f `if echo "$(LOGFILE)" | grep -q '^/'; then echo "$(LOGFILE)"; else
> echo "\`pwd\`/$(LOGFILE)"; fi`.$@
> @$(BUILD_MAKE) -C functional -j1 all
>
> @@ -89,7 +83,7 @@ functional-test:
> @rm -f `if echo "$(LOGFILE)" | grep -q '^/'; then echo "$(LOGFILE)"; else
> echo "\`pwd\`/$(LOGFILE)"; fi`.$@
> @$(TEST_MAKE) -C functional test
>
> -stress-all: $(CRITICAL_STRESS_MAKEFILE)
> +stress-all: $(CRITICAL_MAKEFILE)
> @rm -f `if echo "$(LOGFILE)" | grep -q '^/'; then echo "$(LOGFILE)"; else
> echo "\`pwd\`/$(LOGFILE)"; fi`.$@
> @$(BUILD_MAKE) -C stress -j1 all
>
> @@ -107,12 +101,9 @@ bin-install:
> tools-all:
> @$(MAKE) -C tools all
>
> -$(CRITICAL_MAKEFILES): \
> +$(CRITICAL_MAKEFILE): \
> $(top_srcdir)/scripts/generate-makefiles.sh \
> $(top_srcdir)/CFLAGS \
> $(top_srcdir)/LDFLAGS \
> $(top_srcdir)/LDLIBS
> @$(MAKE) generate-makefiles
> -
> -#tests-pretty:
> -# $(MAKE) all | column -t -s:
>
> --
> Cyril Hrubis
> chrubis@suse.cz
>
More information about the ltp
mailing list