Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
95 commits
Select commit Hold shift + click to select a range
e9d3ea1
only prepend unix when using uds
stuqdog Apr 18, 2025
0e3b8af
untested download and install rust-utils for windows
stuqdog Apr 18, 2025
b968803
cr comments
stuqdog Apr 18, 2025
5d5bb2d
const correctness
stuqdog Apr 18, 2025
d9827e5
try windows build
stuqdog Apr 21, 2025
adff932
test it
stuqdog Apr 21, 2025
59fd83c
try getting all dependencies installed
stuqdog Apr 21, 2025
a8e1751
no setting buf_config_dir
stuqdog Apr 21, 2025
ff01f42
try earlier cmake
stuqdog Apr 21, 2025
96652c8
goldilocks cmake
stuqdog Apr 21, 2025
46dad50
set boost root
stuqdog Apr 21, 2025
1d1ad1e
set boost includedir, try to find librarydir
stuqdog Apr 21, 2025
3268789
try list better
stuqdog Apr 21, 2025
57e6d5d
set librarydir
stuqdog Apr 21, 2025
cb01ea7
set boost compiler
stuqdog Apr 21, 2025
5cf9590
12 not 13
stuqdog Apr 21, 2025
ff5a2bf
had boost compiler backwards
stuqdog Apr 21, 2025
bc83e5b
github action for grpc
stuqdog Apr 21, 2025
674e729
specify grpc version
stuqdog Apr 21, 2025
952c305
install grpc with vcpkg
stuqdog Apr 21, 2025
7e38e1b
powershell
stuqdog Apr 21, 2025
9eab8c5
typo
stuqdog Apr 21, 2025
d590eff
try conan instead
stuqdog Apr 22, 2025
2d7df41
build too
stuqdog Apr 22, 2025
f299251
py -m conan
stuqdog Apr 22, 2025
9e36c2f
fixup
stuqdog Apr 22, 2025
02660a3
refreshenv
stuqdog Apr 22, 2025
6728c57
more installs, set envvars, etc
stuqdog Apr 22, 2025
38667a8
format fix
stuqdog Apr 22, 2025
ae64216
specify cmake version
stuqdog Apr 22, 2025
1dd810f
syntax change
stuqdog Apr 22, 2025
15abea3
cleanup release a bit, print more info
stuqdog Apr 22, 2025
d6982be
get correct arch
stuqdog Apr 23, 2025
11e56e9
one more arch fix
stuqdog Apr 23, 2025
b1e8526
fix unix://, another arch fix
stuqdog Apr 23, 2025
e21ba06
hardcode lib prefix
stuqdog Apr 23, 2025
c7490e2
print system name
stuqdog Apr 23, 2025
758bacf
Merge branch 'main' into RSDK-10366-rust-utils-for-windows
stuqdog Apr 23, 2025
7e0953c
case sensitive
stuqdog Apr 26, 2025
c98af91
Merge branch 'RSDK-10366-rust-utils-for-windows' of ssh://github.com/…
stuqdog Apr 26, 2025
72004be
restart tests
stuqdog Apr 26, 2025
412cbb9
set shared library prefix earlier
stuqdog Apr 28, 2025
73c5410
cleaner
stuqdog Apr 28, 2025
b4c4b84
just hardcode lib
stuqdog Apr 28, 2025
de30df1
fixups from windows testing
stuqdog May 2, 2025
0b2512b
fix token
stuqdog May 2, 2025
4c29471
some cleanup
stuqdog May 2, 2025
add6916
remove comments to self
stuqdog May 2, 2025
d4cb253
a couple more comment cleanups
stuqdog May 2, 2025
89df7fb
add instructions for building on windows
stuqdog May 2, 2025
ba316a3
Merge branch 'main' of ssh://github.com/viamrobotics/viam-cpp-sdk int…
stuqdog May 2, 2025
f1ba0d3
try keeping shared for unix
stuqdog May 2, 2025
07470b2
try keeping shared for unix pt2
stuqdog May 2, 2025
3ee79d5
typo
stuqdog May 2, 2025
6e77560
static for windows only, import chrono
stuqdog May 2, 2025
59ed94e
nominmax for windows
stuqdog May 6, 2025
0f5812a
specify type
stuqdog May 6, 2025
c66a2e0
prepare for working rust-utils
stuqdog May 7, 2025
51de5d8
try stuff from CR comments
stuqdog May 7, 2025
a9b2337
dont install when static building
stuqdog May 7, 2025
7afa451
shared again
stuqdog May 7, 2025
1bd47b2
test from convo with drew
stuqdog May 7, 2025
d43865b
fix ordering of link libraries for rust-utils
stuqdog May 7, 2025
b3a339a
rust-utils always static
stuqdog May 7, 2025
4b68fda
invert check for installing rust-utils
stuqdog May 7, 2025
952702b
revert to linking to viamsdk, not rust-utils
stuqdog May 7, 2025
f1c1e4f
shift to install FILES
stuqdog May 7, 2025
ec59387
did I get conan stuff wrong
stuqdog May 8, 2025
5e15a93
always install
stuqdog May 8, 2025
e5a3a5a
typo
stuqdog May 8, 2025
b843938
workflow cleanup, print out info for to find where to copy from with …
stuqdog May 8, 2025
861a35c
remove commented out stuff
stuqdog May 8, 2025
6306025
cleanup
stuqdog May 8, 2025
9de2913
fixup ls
stuqdog May 8, 2025
2779b50
Merge branch 'main' of ssh://github.com/viamrobotics/viam-cpp-sdk int…
stuqdog May 8, 2025
1e042cf
try cmake invocation for windows
stuqdog May 8, 2025
c6382e1
conanfile always include rust-utils info
stuqdog May 8, 2025
c4143af
include .lib
stuqdog May 8, 2025
165ca0c
interface not private
stuqdog May 8, 2025
d292417
try cmake invocation again
stuqdog May 8, 2025
9095b79
typos
stuqdog May 8, 2025
84b1874
actually install
stuqdog May 8, 2025
bfc6faf
no install
stuqdog May 8, 2025
4ba53d5
no all
stuqdog May 8, 2025
7cb2dd7
all-build
stuqdog May 9, 2025
3186390
more comprehensive listing
stuqdog May 9, 2025
3d56ccc
fix release, comment out windows conan build for now
stuqdog May 9, 2025
b710c7a
remove unused code
stuqdog May 9, 2025
47aca71
Merge branch 'main' into RSDK-10366-rust-utils-for-windows
stuqdog May 9, 2025
b56ab5c
cr comments
stuqdog May 16, 2025
3693c60
Merge branch 'RSDK-10366-rust-utils-for-windows' of ssh://github.com/…
stuqdog May 16, 2025
9459e17
Merge branch 'main' into RSDK-10366-rust-utils-for-windows
stuqdog May 16, 2025
230b29d
cr comments, test direct choco invocation
abe-winter May 16, 2025
cd7690b
get primetime ready
stuqdog May 16, 2025
fa063e4
improve comment
stuqdog May 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 17 additions & 13 deletions .github/workflows/conan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,21 +57,21 @@ jobs:
- name: Checkout Code
uses: actions/checkout@v4

- name: Install cmake
uses: ssrobins/install-cmake@v1
with:
version: 3.27.2
#- name: Install cmake
#uses: ssrobins/install-cmake@v1
#with:
#version: 3.27.2

- name: Install python
uses: actions/setup-python@v5
with:
python-version: '3.12'
#- name: Install python
#uses: actions/setup-python@v5
#with:
#python-version: '3.12'

- name: Install Scoop
uses: MinoruSekine/[email protected]
#- name: Install Scoop
#uses: MinoruSekine/[email protected]

- name: install buf 'n stuff
run: scoop install buf ninja
#- name: install buf 'n stuff
#run: scoop install buf ninja

- name: Install dependencies
uses: crazy-max/ghaction-chocolatey@v3
Expand All @@ -84,7 +84,11 @@ jobs:
Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1
refreshenv
conan profile detect
conan create .
conan create . `
--build=missing `
-o "&:shared=False" `
-s:h compiler.cppstd=17 `
-s:h compiler.runtime=static
Copy link
Member Author

@stuqdog stuqdog May 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@acmorrow I think this (or some subset of it) is necessary for or else I get

ERROR: There are invalid packages:
grpc/1.69.0: Invalid: grpc/1.69.0 shared not supported by Visual Studio

in CI.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I expect you need to keep:

            --build=missing `
            -o "&:shared=False" `

env:
CONAN_USER_HOME: c:/cache
CONAN_USER_HOME_SHORT: c:/cache/conan_shortpaths
Expand Down
3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ else()
endif()

if (NOT WIN32) # build `SHARED` on unix-based systems
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Building STATIC here caused tests to fail. So I reverted to SHARED (which we were already doing). But, building SHARED causes the builds to fail entirely on windows! So, we build STATIC on windows, below.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's not shared though, so I don't really understand how this is working. I think this said SHARED when it originally did pull down the shared library, but when it was switched to pull the static library this didn't get updated. Can you elaborate on what goes wrong in the tests when this is changed to STATIC?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't immediately recall, but I'll switch back to STATIC now and see if/how it fails!

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CMake Error at /__w/viam-cpp-sdk/viam-cpp-sdk/test_package/build/gcc-12-x86_64-14-release/generators/cmakedeps_macros.cmake:66 (message):
  Library 'viam_rust_utils' not found in package.  If 'viam_rust_utils' is a
  system library, declare it with 'cpp_info.system_libs' property

add_library(viam_rust_utils SHARED IMPORTED)
add_library(viam_rust_utils STATIC IMPORTED)
target_link_directories(viam_rust_utils
INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
Expand All @@ -307,6 +307,7 @@ elseif (${CMAKE_SYSTEM_PROCESSOR} STREQUAL "AMD64") # build `STATIC` for windows
target_link_directories(viam_rust_utils
INTERFACE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Apologies: I've changed my mind here, I think you still do need INSTALL_INTERFACE here for the BUILD_SHARED_LIBS=OFF case.

"$<INSTALL_INTERFACE:${CMAKE_INSTALL_LIBDIR}>"
)
set_property(TARGET viam_rust_utils PROPERTY IMPORTED_LOCATION ${viam_rust_utils_file})
endif()
Expand Down
Loading