[dpdk-dev,2/4] mk: do not build tests by default
Checks
Commit Message
On 2/15/2017 4:58 PM, Thomas Monjalon wrote:
> 2017-02-15 15:26, Ferruh Yigit:
>> +.PHONY: test-buid
>> +test-build:
>> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
>> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk test
>
> Why not rely on default rule below?
>
> # all other build targets
> %:
> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk $@
Because generic rule is using "rte.sdkbuild.mk $@" rule,
for unit-test, $@ is test-build, but sdkbuild rule is "test"
This can be solved with adding following to sdkbuild.mk:
I can update if you think this is better?
Thanks,
ferruh
Comments
2017-02-15 17:30, Ferruh Yigit:
> On 2/15/2017 4:58 PM, Thomas Monjalon wrote:
> > 2017-02-15 15:26, Ferruh Yigit:
> >> +.PHONY: test-buid
> >> +test-build:
> >> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
> >> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk test
> >
> > Why not rely on default rule below?
> >
> > # all other build targets
> > %:
> > $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
> > $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk $@
>
>
> Because generic rule is using "rte.sdkbuild.mk $@" rule,
> for unit-test, $@ is test-build, but sdkbuild rule is "test"
>
> This can be solved with adding following to sdkbuild.mk:
>
> --- a/mk/rte.sdkbuild.mk
> +++ b/mk/rte.sdkbuild.mk
> @@ -72,6 +72,9 @@ clean: $(CLEANDIRS)
> $(Q)$(MAKE) -f $(RTE_SDK)/GNUmakefile gcovclean
> @echo Clean complete
>
> +.PHONY: test-build
> +test-build: test
> +
> .SECONDEXPANSION:
> .PHONY: $(ROOTDIRS-y) test
> $(ROOTDIRS-y) test:
>
>
> I can update if you think this is better?
Yes it seems better. Or you can just rename test into test-build
in rte.sdkbuild.mk.
On 2/16/2017 8:53 AM, Thomas Monjalon wrote:
> 2017-02-15 17:30, Ferruh Yigit:
>> On 2/15/2017 4:58 PM, Thomas Monjalon wrote:
>>> 2017-02-15 15:26, Ferruh Yigit:
>>>> +.PHONY: test-buid
>>>> +test-build:
>>>> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
>>>> + $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk test
>>>
>>> Why not rely on default rule below?
>>>
>>> # all other build targets
>>> %:
>>> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk checkconfig
>>> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkbuild.mk $@
>>
>>
>> Because generic rule is using "rte.sdkbuild.mk $@" rule,
>> for unit-test, $@ is test-build, but sdkbuild rule is "test"
>>
>> This can be solved with adding following to sdkbuild.mk:
>>
>> --- a/mk/rte.sdkbuild.mk
>> +++ b/mk/rte.sdkbuild.mk
>> @@ -72,6 +72,9 @@ clean: $(CLEANDIRS)
>> $(Q)$(MAKE) -f $(RTE_SDK)/GNUmakefile gcovclean
>> @echo Clean complete
>>
>> +.PHONY: test-build
>> +test-build: test
>> +
>> .SECONDEXPANSION:
>> .PHONY: $(ROOTDIRS-y) test
>> $(ROOTDIRS-y) tes
>>
>>
>> I can update if you think this is better?
>
> Yes it seems better. Or you can just rename test into test-build
> in rte.sdkbuild.mk.
Can't update to "test-build" in rte.sdkbuild.mk, it needs to be folder
name. I will send new version with above update.
Thanks,
ferruh
@@ -72,6 +72,9 @@ clean: $(CLEANDIRS)
$(Q)$(MAKE) -f $(RTE_SDK)/GNUmakefile gcovclean
@echo Clean complete
+.PHONY: test-build
+test-build: test
+
.SECONDEXPANSION:
.PHONY: $(ROOTDIRS-y) test
$(ROOTDIRS-y) test: