Continuous integration #6
Labels
No labels
3rdparty
Android
API
Author does not respond
bsd
bug
build system/CI
ci-virtual-device
CMake
Contributions Welcome
Core
dependencies
device-specific
documentation
don't_merge
duplicate
enhancement
Example
Haiku
hidraw
hotplug
info required
invalid
libusb
macOS
Misc
Not an issue
question
Release
Test
Test GUI
Windows
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-libusb/hidapi#6
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I'm working on CI scripts for:
This makes sure at least that hidapi builds for most/all supported platforms.
That's very interesting, please share the results when you have the CI setup ready.
Which of these platforms can be integrated with GitHub, e.g. to run when a pull-request is opened?
Also, would it be possible to download artifacts from them? (ideally shared libraries for Windows and Mac)
You can see the results for all the platforms listed above at https://github.com/z3ntu/hidapi/commits/ci . All of them are fully integrated into GitHub ;)
Artifacts are definitely possible on AppVeyor, but I'm not sure if Travis supports artifacts natively. But honestly, it's really easy to compile hidapi on macOS, so I wouldn't actually bother with that. Windows, sure, it's a pain otherwise.
Sounds good!
What about attaching the Windows DLL to the next release? Do you think it would be a good idea? (I can provide MSVC-built library). Then having the artifacts is not essential.
I also have https://github.com/signal11/hidapi/pull/324 on my CI branch which is needed for the Windows build.
I'll work on the Windows dll artifacts tomorrow!
I'd suggest switching to CMake instead of having MSVC2015/2017/2019/etc. projects.
Personally I'm using CMake for all my projects on all platforms (Windows/Linux/macOS/cross-aarch64).
Windows DLL artifacts now work: https://ci.appveyor.com/project/z3ntu/hidapi/builds/25095767/job/q9378cp84do5qs49/artifacts
I'd say having only a DLL as an artifact is not enough.
Perfect case, if we have .dll, .lib and .pdb - that's very common for Windows.
https://ci.appveyor.com/project/z3ntu/hidapi/build/job/f2h18kwiw3kqo2qx/artifacts Better?
I don't believe
hidtest.exeis a required artifact for this library.No it isn't but I think it doesn't hurt including that there.
I’m heavily in favor of leaving it, otherwise we should include it as part of the release downloads for convenience.
Yeah, actually, not having those in the release downloads - is my bigger concern.
@z3ntu this is great work, thanks! I downloaded the Windows artifacts and tested. It looks like the hidapi.dll is built as 32-bit, despite of name of the build
arch=x64. It cannot be loaded with 64-bit Python, but works with 32-bit Python.The reason I think is that you build there a 64-bit Cygwin version and 32-bit MSVC version, but only the MSVC DLL is copied as artifact. This would be really great to have 64-bit artifact available as well.
If this would be helpful, I have 64-bit target added to MSVC project here (apart from update to VIsual Studio 2017)
github.com/Qbicz/hidapi-1@a0a00ca76bFor me we can close this, as https://github.com/libusb/hidapi/pull/34 was successful.
One thing that could be added is 64-bit Windows artifacts, @z3ntu will you have time for this? Or should we create a separate task to be picked up later by someone?
Create a new issue for that anyways, but I'll have a look at it tomorrow