Commit 0b4de27
committed
Support building with MSVC
Fixes #7
### Motivation
The Python client cannot be built with MSVC.
### Modifications
Add `vcpkg.json` to download the Boost.Python dependency. Then fix some
CMake errors:
1. Boost.Python cannot be found on Windows. The component of Boost
cannot be `python3`. It should be a specific version like
`python310`.
2. Link to `pulsarWithDeps.lib` for MSVC and modify the compilation
option from `/MD` to `/MT` when `LINK_STATIC` is `ON`.
3. When `LINK_STATIC` is `OFF` (by default), remove the suffix of the
name because CMake will find the correct suffixes on different
platforms.
4. Add the Python3 library to the target on Windows, otherwise the
symbols cannot be found.
Since Python on Windows can only recognize `*.pyd` suffix of a C
extension, change the `CMAKE_SHARED_LIBRARY_SUFFIX` and use
`_pulsar.pyd` in `setup.py` on Windows.
Add README to tell users how to build Python client on Windows.
### TODO
Add a GitHub Actions workflow to verify the Windows build.1 parent 3e37e44 commit 0b4de27
File tree
6 files changed
+107
-14
lines changed- .github/workflows
6 files changed
+107
-14
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| 70 | + | |
70 | 71 | | |
71 | 72 | | |
72 | 73 | | |
| |||
118 | 119 | | |
119 | 120 | | |
120 | 121 | | |
| 122 | + | |
121 | 123 | | |
122 | 124 | | |
123 | 125 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
24 | 29 | | |
25 | 30 | | |
26 | 31 | | |
| |||
29 | 34 | | |
30 | 35 | | |
31 | 36 | | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
32 | 41 | | |
33 | | - | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
34 | 51 | | |
35 | | - | |
| 52 | + | |
36 | 53 | | |
37 | 54 | | |
38 | 55 | | |
| |||
44 | 61 | | |
45 | 62 | | |
46 | 63 | | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
47 | 67 | | |
48 | | - | |
49 | | - | |
50 | | - | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
51 | 87 | | |
52 | 88 | | |
53 | 89 | | |
| |||
68 | 104 | | |
69 | 105 | | |
70 | 106 | | |
71 | | - | |
72 | | - | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
73 | 112 | | |
74 | 113 | | |
75 | 114 | | |
| |||
80 | 119 | | |
81 | 120 | | |
82 | 121 | | |
83 | | - | |
84 | | - | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
85 | 129 | | |
86 | 130 | | |
87 | 131 | | |
88 | | - | |
| 132 | + | |
89 | 133 | | |
90 | 134 | | |
91 | 135 | | |
| |||
128 | 172 | | |
129 | 173 | | |
130 | 174 | | |
| 175 | + | |
131 | 176 | | |
132 | 177 | | |
133 | 178 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
34 | 61 | | |
35 | 62 | | |
36 | 63 | | |
37 | | - | |
| 64 | + | |
38 | 65 | | |
39 | 66 | | |
40 | | - | |
41 | 67 | | |
42 | 68 | | |
43 | 69 | | |
44 | 70 | | |
45 | 71 | | |
46 | 72 | | |
47 | 73 | | |
| 74 | + | |
| 75 | + | |
48 | 76 | | |
49 | 77 | | |
50 | 78 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
24 | 25 | | |
25 | 26 | | |
26 | 27 | | |
| |||
58 | 59 | | |
59 | 60 | | |
60 | 61 | | |
61 | | - | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
62 | 69 | | |
63 | 70 | | |
64 | 71 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
0 commit comments