Skip to content

Commit

Permalink
fix conan compilation in Windows
Browse files Browse the repository at this point in the history
  • Loading branch information
facontidavide committed Feb 4, 2024
1 parent 23d2ec6 commit ee098a4
Show file tree
Hide file tree
Showing 10 changed files with 49 additions and 46 deletions.
4 changes: 3 additions & 1 deletion 3rdparty/lua-5.4.3/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,9 @@ set(LUA_LIB_SRCS
)
set(LUA_LIB_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR}/src)

add_compile_options(-fPIC)
if(CMAKE_C_COMPILER_ID MATCHES "GNU|Clang|AppleClang")
add_compile_options(-fPIC)
endif()

add_library(lua_static STATIC
${LUA_LIB_SRCS}
Expand Down
7 changes: 2 additions & 5 deletions COMPILE.md
Original file line number Diff line number Diff line change
Expand Up @@ -194,10 +194,7 @@ Change the **Qt** and **QtInstallerFramework** version as needed.
xcopy src\PlotJuggler\installer installer\ /Y /S /f /z
xcopy install\bin\*.* installer\io.plotjuggler.application\data /Y /S /f /z
C:\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe --release ^
installer\io.plotjuggler.application\data\plotjuggler.exe
C:\QtPro\5.15.16\msvc2019_64\bin\windeployqt.exe --release installer\io.plotjuggler.application\data\plotjuggler.exe
C:\Qt\Tools\QtInstallerFramework\4.1\bin\binarycreator.exe ^
--offline-only -c installer\config.xml -p installer ^
PlotJuggler-Windows-installer.exe
C:\QtPro\Tools\QtInstallerFramework\4.6\bin\binarycreator.exe --offline-only -c installer\config.xml -p installer PlotJuggler-Windows-installer.exe
```
11 changes: 4 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

**Gold Sponsor**: [Greenzie](https://www.greenzie.com/)

# PlotJuggler 3.8
# PlotJuggler 3.9

PlotJuggler is a tool to visualize time series that is **fast**, **powerful** and **intuitive**.

Expand Down Expand Up @@ -95,15 +95,12 @@ If you are still using ROS1 (Ubuntu 20.04), install instead:
sudo snap install plotjuggler-ros
```

### Binary installers
### Windows Binary installer

Note that these installers do __not__ include ROS plugins.

**Linux AppImage** (compatible with Ubuntu 20.04 or later):
[PlotJuggler-3.6.0-x86_64.AppImage](https://github.com/facontidavide/PlotJuggler/releases/download/3.6.0/PlotJuggler-3.6.0-x86_64.AppImage)
This installer does __not__ include ROS plugins.

**Windows Installer**:
[PlotJuggler-Windows-3.6.0-installer](https://github.com/facontidavide/PlotJuggler/releases/download/3.6.0/PlotJuggler-Windows-3.6.0-installer.exe)
[PlotJuggler-Windows-3.9.0-installer](https://github.com/facontidavide/PlotJuggler/releases/download/3.9.0/PlotJuggler-Windows-3.9.0-installer.exe)

### Debian packages for ROS User

Expand Down
12 changes: 8 additions & 4 deletions conanfile.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
[requires]
protobuf/3.21.1
mosquitto/2.0.14
zeromq/4.3.4
zstd/1.5.2
protobuf/3.21.12
mosquitto/2.0.18
zeromq/4.3.5
zstd/1.5.5
zlib/1.2.13

[options]
zeromq*:shared=False

[generators]
CMakeDeps
Expand Down
2 changes: 1 addition & 1 deletion installer/config.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Installer>
<Name>PlotJuggler</Name>
<Version>3.6.0</Version>
<Version>3.9.0</Version>
<Title>PlotJuggler installer</Title>
<Publisher>Davide Faconti</Publisher>
<StartMenuDir>PlotJuggler</StartMenuDir>
Expand Down
4 changes: 2 additions & 2 deletions installer/io.plotjuggler.application/meta/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
<Package>
<DisplayName>PlotJuggler Main App</DisplayName>
<Description>Install PlotJuggler with basic plugins.</Description>
<Version>3.6.0</Version>
<ReleaseDate>2022-08-13</ReleaseDate>
<Version>3.9.0</Version>
<ReleaseDate>2024-02-04</ReleaseDate>
<Licenses>
<License name="MPL-2.0" file="license_mpl.txt" />
<License name="LGPL" file="license_lgpl.txt" />
Expand Down
9 changes: 5 additions & 4 deletions plotjuggler_plugins/DataStreamMQTT/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,15 @@ if(BUILDING_WITH_VCPKG)
set(MOSQUITTO_FOUND ON)
elseif(BUILDING_WITH_CONAN)
message(STATUS "Finding MOSQUITTO with conan")
find_package(mosquitto CONFIG REQUIRED)
find_package(mosquitto REQUIRED)
set(MOSQUITTO_FOUND ON)
set(MOSQUITTO_LIBS mosquitto::mosquitto)
else()
message(STATUS "Finding MOSQUITTO without package managers")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")
find_package(Mosquitto REQUIRED)
set(MOSQUITTO_LIBS ${MOSQUITTO_LIBRARIES})
include_directories( ${MOSQUITTO_INCLUDE_DIR} )
endif()

if(MOSQUITTO_FOUND)
Expand All @@ -36,11 +39,9 @@ if(MOSQUITTO_FOUND)
${Qt5Widgets_LIBRARIES}
Qt5::Network
Qt5::Svg
${MOSQUITTO_LIBRARIES}
${MOSQUITTO_LIBS}
plotjuggler_base
)
target_include_directories(DataStreamMQTT_Mosquitto
PUBLIC ${MOSQUITTO_INCLUDE_DIR})

install(TARGETS DataStreamMQTT_Mosquitto
DESTINATION ${PJ_PLUGIN_INSTALL_DIRECTORY} )
Expand Down
20 changes: 8 additions & 12 deletions plotjuggler_plugins/DataStreamZMQ/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,36 +1,32 @@
if(BUILDING_WITH_VCPKG)
message(STATUS "Finding ZeroMQ with vcpkg")
set(ZeroMQ_LIBRARIES libzmq libzmq-static)
elseif(BUILDING_WITH_CONAN)
message(STATUS "Finding ZeroMQ with conan")
set(ZeroMQ_LIBRARIES libzmq-static)
else()
message(STATUS "Finding ZeroMQ without package managers")
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")
set(ZeroMQ_LIBS ${ZeroMQ_LIBRARIES})
endif()

find_package(ZeroMQ QUIET)

if(ZeroMQ_FOUND)

message(STATUS "[ZeroMQ] found")

include_directories(../ ${ZeroMQ_INCLUDE_DIR})

add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)

QT5_WRAP_UI ( UI_SRC datastream_zmq.ui )

SET( SRC datastream_zmq.cpp )
add_library(DataStreamZMQ SHARED datastream_zmq.cpp ${UI_SRC} )

add_library(DataStreamZMQ SHARED ${SRC} ${UI_SRC} )
target_link_libraries(DataStreamZMQ ${Qt5Widgets_LIBRARIES} plotjuggler_base)

target_link_libraries(DataStreamZMQ
${Qt5Widgets_LIBRARIES}
plotjuggler_base
${ZeroMQ_LIBRARIES}
)
if(BUILDING_WITH_VCPKG OR BUILDING_WITH_CONAN)
target_link_libraries(DataStreamZMQ libzmq-static)
else()
target_link_libraries(DataStreamZMQ ${ZeroMQ_LIBRARIES})
endif()

install(TARGETS DataStreamZMQ DESTINATION ${PJ_PLUGIN_INSTALL_DIRECTORY} )
else()
Expand Down
24 changes: 15 additions & 9 deletions plotjuggler_plugins/ParserProtobuf/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,22 @@

include_directories( ../ )

add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)
if(BUILDING_WITH_CONAN)
message(STATUS "Finding Protobuf with conan")
set(Protobuf_LIBS protobuf::libprotobuf)
else()
message(STATUS "Finding Protobuf without package managers")
find_package(Protobuf QUIET)
set(Protobuf_LIBS ${Protobuf_LIBRARIES})
endif()

find_package(Protobuf QUIET)

if( Protobuf_FOUND)

include_directories( ../ )
add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)

message(STATUS "[Protobuf] found")
QT5_WRAP_UI ( UI_SRC
protobuf_parser.ui
)
QT5_WRAP_UI ( UI_SRC protobuf_parser.ui )

include_directories(${Protobuf_INCLUDE_DIRS})

Expand All @@ -30,7 +36,7 @@ if( Protobuf_FOUND)
target_link_libraries(ProtobufParser
${Qt5Widgets_LIBRARIES}
${Qt5Xml_LIBRARIES}
${Protobuf_LIBRARIES}
${Protobuf_LIBS}
plotjuggler_base
plotjuggler_qwt)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
###############################################################################
# CMake build rules for FastCDR #
###############################################################################
cmake_minimum_required(VERSION 2.8.12)
cmake_minimum_required(VERSION 3.10)

set(IS_TOP_LEVEL TRUE)
if(PROJECT_SOURCE_DIR)
Expand Down

0 comments on commit ee098a4

Please sign in to comment.