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

Having these empty header files prevents me from building projects vi… #872

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Having these empty header files prevents me from building projects vi… #872

wants to merge 1 commit into from

Conversation

jasiek
Copy link

@jasiek jasiek commented Apr 13, 2016

…a PlatformIO.

@jasiek
Copy link
Author

jasiek commented Apr 13, 2016

See this for details: platformio/platformio-core#615

@RickKimball
Copy link

Doesn't seem like an Energia issue if your editor/build system can't deal with valid files

@jasiek
Copy link
Author

jasiek commented Apr 13, 2016

Do these files serve any purpose? PlatformIO is more than just an editor.
On Apr 13, 2016 19:03, "Rick Kimball" [email protected] wrote:

Doesn't seem like an Energia issue if your editor/build system can't deal
with valid files


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#872 (comment)

@RickKimball
Copy link

I have no idea but if your environment can't deal with zero length files, that is a problem with your environement

@jasiek
Copy link
Author

jasiek commented Apr 13, 2016

I think the problem is that those files are there in the first place. Do
they serve any purpose?
On Apr 13, 2016 19:21, "Rick Kimball" [email protected] wrote:

I have no idea but if your environment can't deal with zero length files,
that is a problem with your environement


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
#872 (comment)

@rei-vilo
Copy link
Member

AFAIR, those SPI.h files are used to include the folders where they are located.

Any change would require regression tests.

@jasiek
Copy link
Author

jasiek commented Apr 14, 2016

I'll try to investigate then. I think it would be a worthwhile goal as it would make the Energia platform reusable elsewhere.

@StefanSch
Copy link

Hmm, not fully understood the system but it might be something different.

In this sketches the library uses the SPI library as well.
So the SPI.h file to include should come from the library SPI.
If the search path on the system now first looks into the current library it gets this SPI.h file which is empty and therefore not providing the right information.

So in this case the issue could come from the build system,
the order of the library includes in the sketch:
#include <SPI.h>
#include <AIR430BoostETSI.h>
and as well that the spi.h file in the folders. So i think removing them is the right way.

@rei-vilo
Copy link
Member

If you do so, please proceed with the regression tests for most of the platforms, including build and link, upload and run. Thank you!

@jasiek
Copy link
Author

jasiek commented Apr 14, 2016

So I have done an experiment where I built a binary using both master and this branch on the example in AIR430BoostEuropeETSI/WirelessTest, and they both produce the exact same binary.

Is this a sufficient test, or am I missing something?

@rei-vilo
Copy link
Member

Does both run successfully on each platform? The dummy spi.h was intended for the linker.

@jasiek
Copy link
Author

jasiek commented Apr 14, 2016

I don't have access to all hardware platforms necessary to test this on a real device, but I would imagine they would work the same way, if they produce the same binary. I'll conduct some more thorough investigation on the rest of the libraries soon-ish.

@rei-vilo
Copy link
Member

What exactly do you mean by same binary: bit-per-bit matching files?

@jasiek
Copy link
Author

jasiek commented Apr 14, 2016

Yes.

@jasiek
Copy link
Author

jasiek commented Apr 15, 2016

Results for compiling the examples for AIR430BoostEuropeETSI for lm4f:

Top is - git tag 0101E0017-emt-a61, bottom is the same with SPI.h removed.

WirelessControl
MD5 (WirelessControl.cpp) = f8fd4ed24e2d13fbe86a5288d715f646
MD5 (WirelessControl.cpp.bin) = 70535fd482917ca358d1d7da1bb65461
MD5 (WirelessControl.cpp.d) = 93217d64464ab398916606b10cb02595
MD5 (WirelessControl.cpp.elf) = 8d01909e960b06203654cfed0b051706
MD5 (WirelessControl.cpp.o) = 2faa5e0c31bda110364af97ba569258a

MD5 (WirelessControl.cpp) = f8fd4ed24e2d13fbe86a5288d715f646
MD5 (WirelessControl.cpp.bin) = 70535fd482917ca358d1d7da1bb65461
MD5 (WirelessControl.cpp.d) = 1627a4000b8e64c6aae9cda7bd665584
MD5 (WirelessControl.cpp.elf) = 8d01909e960b06203654cfed0b051706
MD5 (WirelessControl.cpp.o) = 2faa5e0c31bda110364af97ba569258a

WirelessMonitorHub
MD5 (WirelessMonitorHub.cpp) = e714cced9ed73e40c78bdf10406e8522
MD5 (WirelessMonitorHub.cpp.bin) = ce320dc2864bf3205daca286168edaa1
MD5 (WirelessMonitorHub.cpp.d) = d66a113e6011b93bfc208a6f93c10a83
MD5 (WirelessMonitorHub.cpp.elf) = 11870090f06f1804707a71347d6f7a81
MD5 (WirelessMonitorHub.cpp.o) = 471f7c0f36d1c29e15c593c6a7d33d61

MD5 (WirelessMonitorHub.cpp.bin) = ce320dc2864bf3205daca286168edaa1
MD5 (WirelessMonitorHub.cpp.d) = 317c295abc3ead818799778b2ddefcc2
MD5 (WirelessMonitorHub.cpp.elf) = 11870090f06f1804707a71347d6f7a81
MD5 (WirelessMonitorHub.cpp.o) = 471f7c0f36d1c29e15c593c6a7d33d61

WirelessMonitorSensor
MD5 (WirelessMonitorSensor.cpp) = 648939dbb16ca63d5dbc81a6dfde7cba
MD5 (WirelessMonitorSensor.cpp.bin) = 0b4b95278d89c3007e0b7e4a481a7bdb
MD5 (WirelessMonitorSensor.cpp.d) = ed546b5ba1a044b031efdf22a22fb263
MD5 (WirelessMonitorSensor.cpp.elf) = 39e7b852896d72fff623c90529faaff4
MD5 (WirelessMonitorSensor.cpp.o) = 8683b9595634799d16a0cba3fb58b2eb

MD5 (WirelessMonitorSensor.cpp.bin) = 0b4b95278d89c3007e0b7e4a481a7bdb
MD5 (WirelessMonitorSensor.cpp.d) = 73938431f6076304af7c2931f1dde611
MD5 (WirelessMonitorSensor.cpp.elf) = 39e7b852896d72fff623c90529faaff4
MD5 (WirelessMonitorSensor.cpp.o) = 8683b9595634799d16a0cba3fb58b2eb

WirelessTest
MD5 (WirelessTest.cpp) = 5c947428199be0b5fd611b0dc724e922
MD5 (WirelessTest.cpp.bin) = b7befc254c79e7dbc63a79072a9a27f4
MD5 (WirelessTest.cpp.d) = b9087d8ab9b8a61782f117b2c6fb2841
MD5 (WirelessTest.cpp.elf) = 150f29fa7c0a688223a7fb8457770eb1
MD5 (WirelessTest.cpp.o) = 63ab43667f998f845ecf958571ea008a

MD5 (WirelessTest.cpp) = 5c947428199be0b5fd611b0dc724e922
MD5 (WirelessTest.cpp.bin) = b7befc254c79e7dbc63a79072a9a27f4
MD5 (WirelessTest.cpp.d) = ec0d2f14c1d451379b644a8b7afc340b
MD5 (WirelessTest.cpp.elf) = 150f29fa7c0a688223a7fb8457770eb1
MD5 (WirelessTest.cpp.o) = 63ab43667f998f845ecf958571ea008a

I'll do the rest of the platforms when I find some time this weekend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants