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

Update README.md and update to latest WDK #23

Closed
wants to merge 2 commits into from
Closed

Conversation

Oxalin
Copy link

@Oxalin Oxalin commented Mar 24, 2019

Clarified and fixed README.md.
Updated Windows driver kit requirement to latest version (10.0.1763). Previous version should still work, but you will need to change the version in the VS projects.

Signed-off-by: Alexandre Demers <alexandre.f.demers@gmail.com>
It's the latest available. Previous versions should still work.

Signed-off-by: Alexandre Demers <alexandre.f.demers@gmail.com>
@cezuni
Copy link

cezuni commented Mar 25, 2019

I had messed up commit history by simply merging @Oxalin pull requests. Sorry for my faults. I'll do rebase and merge. b16d2c8 is cherry-picked and pushed to master branch but 831a2b1 needs more time.

cezuni pushed a commit that referenced this pull request Mar 25, 2019
This is suqashed commit from #23 by @Oxalin.
It's the latest available. Previous versions should still work.
Windows SDK versions of userspace projects should be adjusted if an
installed version is not 10.0.17763.
@cezuni
Copy link

cezuni commented Mar 25, 2019

@Oxalin : Can you check cf76164 on dev branch ? It is a squashed commit from your 831a2b1. Disappointingly, $(LatestTargetPlatformVersion) is not working in userspace projects but kernel projects are OK. This seems to be a sort of VS bug. So fixed SDK version for userland projects should be specified. Anyway, it would be desirable that latest SDK & WDK are supported. I've confirmed that usbip-win is successfully built with old SDK(10.0.17134). I will merge to master if you confirm.

@Oxalin
Copy link
Author

Oxalin commented Apr 10, 2019 via email

@koudis
Copy link
Collaborator

koudis commented Jul 3, 2019

@cezuni @Oxalin
I think that "Compile with Latest WDK and SDK" is acceptable.

Userspace utilities are compiled by v142 (fc79b7b). V142 compiller needs SDK version >= 10.0.17*.
Drivers are compiled by WDK 10.0 1903 which needs SDK 10.0.18*.

I hope that WDK is written correctly and if they bring some breaking changes it does not break old WDK api.

I suggest use "Lastest SDK and WDK" and add note with tested vesions (SDK >=10.0.17*).
Second option is to use CMake or simmilar tool for dependency managing (but I am not sure if there is a correct support for WDK).

EDIT: It seems that WDK is supported and it's not problem import it by cmake - https://github.com/SergiusTheBest/FindWDK

@koudis
Copy link
Collaborator

koudis commented Jul 3, 2019

Waaw, the WDK has a static free version (called Enterprise WDK)
https://docs.microsoft.com/cs-cz/windows-hardware/drivers/download-the-wdk

I guest that rewrite project to CMake brings many advantages

  • Control the exact version of SDK/WDK (or minimum needed)
  • Control around signing
  • Simple packagaging and releasing
  • In future the tests can be done really easily (compare to VS)

@cezuni
Copy link

cezuni commented Jul 3, 2019

I updated dev branch forcefully. This branch replaces fixed sdk versions with (LatestTargetPlatformVersion) in all userland projects. VS 2019 treats well $(LatestTargetPlatformVersion).
Although usbip-win recommends an up-to-date build environment, old SDK/WDK and VS2017 seem to have no problem to build. I have tested with some versions as noted in README.md on dev branch.

@cezuni
Copy link

cezuni commented Jul 3, 2019

@koudis : Your CMake idea is very good. However, is it possible that CMake is integrated with VS. Even though it is a command-only build tool, CMake can be a versatile additional build tool. In my opinion, CMake build process can be adopted independently of an existing VS build.

@koudis
Copy link
Collaborator

koudis commented Jul 3, 2019

@cezuni
It's not effective maintain CMake and own .sln in one project (CMake can generate .sln etc)
CMake has a simple GUI which can by used instead of raw command line.
In case we can create simple .ps1 script which runs CMake and generates .sln file

I will do some research... and see how difficult is to move/add project to CMake.

@cezuni
Copy link

cezuni commented Jul 10, 2019

I updated dev branch forcefully. This branch replaces fixed sdk versions with (LatestTargetPlatformVersion) in all userland projects. VS 2019 treats well $(LatestTargetPlatformVersion).
Although usbip-win recommends an up-to-date build environment, old SDK/WDK and VS2017 seem to have no problem to build. I have tested with some versions as noted in README.md on dev branch.

This work has been merged into the master branch. I'll close this PR and remove dev branch.

@cezuni cezuni closed this Jul 10, 2019
@koudis
Copy link
Collaborator

koudis commented Jul 24, 2019

After #48 I try to create CMake project prototype for USBIP Project.

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.

None yet

3 participants