Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #2423, avoid use of abspath make function #2424

Merged
merged 1 commit into from
Aug 15, 2023
Merged

Conversation

jphickey
Copy link
Contributor

@jphickey jphickey commented Aug 10, 2023

Checklist (Please check before submitting)

Describe the contribution
The abspath function does not work in GNU make v3.80, which is still used as it is packaged with the Wind River tools as part of VxWorks 6.x.

The $(abspath ...) function was used in two places related to generating tables - first for extraction of the ELF file from an intermediate lib, second for conversion of that ELF file to a table file. In the first case, the path should already be absolute, as it comes from CMake. In the second case, the path should always be relative, because it is intended to match another pattern rule starting with "elf/%". For the second rule, prefixing with $(CURDIR) should achieve the same effect.

Fixes #2423

Testing performed
Build with both older (v3.80) and newer (v4.3) versions of GNU make

Expected behavior changes
Successfully builds using make v3.80

System(s) tested on
GSFC Vxworks development machine

Contributor Info - All information REQUIRED for consideration of pull request
Joseph Hickey, Vantage Systems, Inc.

The abspath function does not work in GNU make v3.80, which is still
used as it is packaged with the Wind River tools as part of VxWorks 6.x.

The $(abspath ...) function was used in two places related to generating
tables - first for extraction of the ELF file from an intermediate
lib, second for conversion of that ELF file to a table file.  In the
first case, the path should already be absolute, as it comes from CMake.
In the second case, the path should always be relative, because it is
intended to match another pattern rule starting with "elf/%".  For the
second rule, prefixing with $(CURDIR) should achieve the same effect.
@jphickey
Copy link
Contributor Author

Note this PR also adds some quoting. This should make it a bit more robust just in case a filename contains spaces. But more importantly, it makes it more evident in the console if an argument evaluated to an empty string -- that is, one can easily see the quotes with an empty string vs. no argument at all - which doesn't really look wrong.

@jphickey jphickey added the CCB:Ready Ready for discussion at the Configuration Control Board (CCB) label Aug 10, 2023
@dzbaker dzbaker merged commit 4d5aadf into main Aug 15, 2023
41 checks passed
@dzbaker dzbaker added CCB:Approved Indicates code review and approval by community CCB and removed CCB:Ready Ready for discussion at the Configuration Control Board (CCB) CCB:FastTrack labels Aug 17, 2023
@dmknutsen dmknutsen added this to the Equuleus milestone Aug 23, 2023
@jphickey jphickey deleted the fix-2423-abspath branch January 16, 2024 21:03
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CCB:Approved Indicates code review and approval by community CCB Equuleus-rc1
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Older versions of make do not support "abspath"
3 participants