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

Added presets for Spinnaker SDK #553

Merged
merged 10 commits into from
Sep 10, 2018
Merged

Conversation

jpsacha
Copy link
Member

@jpsacha jpsacha commented Apr 13, 2018

The PR contains preset for FLIR's Spinnaker SDK

The current version wraps the C API part. It was tested on Windows x64. Demo code for using the preset is in JavaCV Examples project under Spinnaker-demo (initial development is on branch spinnaker).

@saudet
Copy link
Member

saudet commented Apr 14, 2018

Thanks! Have you received permission from FLIR/PGR? Remember that we had to get permission for FlyCapture: https://github.com/bytedeco/javacpp-presets/blob/master/flycapture/src/main/java/org/bytedeco/javacpp/presets/FlyCapture2.java#L23-L26

If you haven't contacted them already, could you also ask them if they could also make the header files and libraries of both FlyCapture and Spinnaker redistributable for the sake of builds only? It would make it much easier for the CI server...

@jpsacha
Copy link
Member Author

jpsacha commented Apr 14, 2018

Do you have a contact person at Point Grey that dealt with FlyCapture permission?

@saudet
Copy link
Member

saudet commented Apr 14, 2018 via email

@jpsacha
Copy link
Member Author

jpsacha commented May 2, 2018

Request for permission to publish was submitted to Point Grey [PGR #329142].

@jpsacha
Copy link
Member Author

jpsacha commented May 11, 2018

I got clarifications from FLIR / Point Grey. Below are specific points I got alignment from FLIR support:

  1. We do not need special permissions to publish Spinnaker wrapper, we just need to follow EULA (https://www.ptgrey.com/support/downloads/10615). Most of our concerns are covered by EULA section 4. For the record I attach the copy of the current EULA: FLIR-Spinnaker-SDK-EULA-2018.pdf

  2. We can provide an open source software that interacts with Spinnaker SDK, that is the javacpp-preset.

  3. We can also distribute, as part of out pre-build binaries, some relevant Spinnaker dynamically linked libraries (.dll and .so), that is covered by EULA section 4b). For clarity, we will cannot distribute SDK headers, source code, nor the statically linked libraries (EULA section 4b).

  4. We could use headers and static libraries for automated testing as long as their are not exposed them for download - that is that we do not redistribute them. I am not clear how to exactly do that, but that where the restriction from FLIR is.

Additionally we need to do proper credits to FLIR where relevant. I think we are covered here, but I will double check it that we have proper attributions in the code.

In summary, we should be fine with the current PR. As for addition of automated build/tests we will need to figure out how to do it without disclosing Spinnaker headers and static libraries. @saudet any ideas how to do that?

@saudet
Copy link
Member

saudet commented May 13, 2018

Sounds good! Could you forward to me their response by e-mail for reference?

We'll need to provide archives that are accessible only to the CI servers, (which isn't really working for FlyCapture, but) check inside the scripts in the ci subdirectory for the lines with "pgr" or "flycap" in them. Could you provide similar archives for Spinnaker? FYI, @vb216 created the current ones for FlyCapture.

@saudet
Copy link
Member

saudet commented Jun 15, 2018

@jpsacha Have you received any news from them since?

@saudet
Copy link
Member

saudet commented Jun 19, 2018

Actually, I think you simply haven't forwarded their reply to me yet? It sounds like they were alright with it.

In any case, to streamline releases, I will be needing those archives containing the SDK for all platforms. If you have any questions about that, please let me know. We won't be able to make a release until this is done. Thanks for your time!

@jpsacha
Copy link
Member Author

jpsacha commented Jun 28, 2018

@saudet I just sent the original emails from FLIR support to your email. Please confirm that you received it.

@saudet
Copy link
Member

saudet commented Jun 30, 2018

Got it, thanks! Sounds good, so let me know if you have any questions about what to do for the archives...

@jpsacha
Copy link
Member Author

jpsacha commented Jul 6, 2018

I am looking into the archives setup. I will need to get Linux libraries, so fas was only building on Windows...

@jpsacha
Copy link
Member Author

jpsacha commented Jul 29, 2018

I added the archive for testing Spinnaker build. Updated Spinnaker to latest release v.1.15.0.63.

@saudet
Copy link
Member

saudet commented Aug 8, 2018

The build is failing:
https://api.travis-ci.org/v3/job/412999567/log.txt
Looks like we would need to extract in the root directory?

Extract to root to match expected installation location.
Extract to `$HOME/build` then copy to docker root.
@jpsacha
Copy link
Member Author

jpsacha commented Aug 14, 2018

Hopefully getting there. Trying to figure out the automated checks process.

@jpsacha
Copy link
Member Author

jpsacha commented Aug 15, 2018

@saudet the latest correction build correctly under Travis

@saudet
Copy link
Member

saudet commented Aug 18, 2018

It's building on linux-x86_64, great! Do you have the build ready for other platforms as well?

@jpsacha
Copy link
Member Author

jpsacha commented Aug 20, 2018

I will check build for Windows 64. Current Java does not support 32-bit, so we can skip those. I am not planning to tinker with ARM.

@saudet
Copy link
Member

saudet commented Aug 25, 2018

So, let's also trim the supported platforms to those 2 in the spinnaker/platform/pom.xml and parent pom.xml files for now.

@jpsacha
Copy link
Member Author

jpsacha commented Sep 9, 2018

@saudet The CI build is now setup for Windows x86, x86_64, and Linux x86_64. Ready to merge.

@saudet saudet merged commit 906a8ae into bytedeco:master Sep 10, 2018
@jpsacha jpsacha deleted the Spinnaker-PR branch December 19, 2018 05:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants