Experimental Physics and Industrial Control System
|
Hi Andrew, On Tue, 21 Apr 2020 at 18:20, Johnson, Andrew N. < anj at anl.gov> wrote:
On Apr 21, 2020, at 5:23 AM, Ralph Lange via Core-talk < core-talk at aps.anl.gov> wrote:
NB. Ran into a minor bug in make (4.2.1): if you're defining multiple grouped target rules (that use the '&:' separator), make creates bogus warnings about "overriding recipe for target '&'" - the rules work fine, though.
Are you sure that grouped targets are actually available in 4.2.1? They aren’t mentioned in the info pages for my 4.2.1 installation at all, but I did find documentation for them in the online docs for version 4.3. That warning message looks like
it thinks the rule is also building a target called ‘&’ and the rules might still work anyway. I probably read about these when 4.3 came out but I don’t think we can use them in Base for a few years.
I was checking with the examples from the online documentation on my 4.2.1 installation - will double-check and probably do a workaround.
Thanks for looking at my PR and making those changes. I didn’t think the specific TAPFILES.t (and JUNITFILES.t) variables would be necessary for those static pattern rules, given that the %.t source files wouldn’t exist so Make would look for
some other way to create the %.tap files. I assume it didn’t like it though, your change is fine (and maybe faster even if it’s not required).
A bit weird, yes. I was getting warnings that (my added tap-generating) rules were overwritten by those rules, followed by make failures because it didn't find a way to generate the .tap files. (As it just had overwritten the rule that would tell it how.) Adding the specific variables was fixing that behavior. In the JUNITFILES case I think it is required, as despite .tap files existing, I don't want .xml to be generated by converting them. Google Test is directly writing .xml and .tap reports.
Please comment on my new .tests-failed $(TEST_FAILURE_FILE) and $(PROVE_FAILURE) mechanism – see the changes in CONFIG_BASE and RULES_TOP for the key parts of that. It could be expanded or changed, it’s basically a way for the runtests and test-results
targets to save the test status of a series of tests along with a message, and have those messages output at the end of the build along with returning a success/failure statue. Currently $(PROVE_FAILURE) just captures stdout from $(PROVE) and appends it to
the $(TEST_FAILURE_FILE) (which is stored under $(TOP), I will need to merge the files from all submodules in the 7.0 branch), but it looks like we could put more functionality in here if we wanted to.
Works as advertised for me. Also simple and flexible enough to be extended as we need it. Fine!
Cheers, ~Ralph
- References:
- tapfiles double-colon rule Johnson, Andrew N. via Core-talk
- Re: tapfiles double-colon rule Ralph Lange via Core-talk
- Re: tapfiles double-colon rule Johnson, Andrew N. via Core-talk
- Re: tapfiles double-colon rule Ben Franksen via Core-talk
- Re: tapfiles double-colon rule Ralph Lange via Core-talk
- Re: tapfiles double-colon rule Johnson, Andrew N. via Core-talk
- Navigate by Date:
- Prev:
Re: tapfiles double-colon rule Johnson, Andrew N. via Core-talk
- Next:
Build failed: epics-base base-appveyor-18 AppVeyor via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: tapfiles double-colon rule Johnson, Andrew N. via Core-talk
- Next:
Build failed: epics-base base-appveyor-15 AppVeyor via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|
ANJ, 21 Apr 2020 |
·
Home
·
News
·
About
·
Base
·
Modules
·
Extensions
·
Distributions
·
Download
·
·
Search
·
EPICS V4
·
IRMIS
·
Talk
·
Bugs
·
Documents
·
Links
·
Licensing
·
|