mirror of
https://github.com/hyperion-project/hyperion.ng.git
synced 2025-03-01 10:33:28 +00:00
Refactor/Create APT/DNF Repository (#1648)
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
add_subdirectory(hyperiond)
|
||||
|
||||
# The following binaries are just compiled if requested
|
||||
if (ENABLE_REMOTE_CTL)
|
||||
# The following binaries are just compiled ifrequested
|
||||
if(ENABLE_REMOTE_CTL)
|
||||
add_subdirectory(hyperion-remote)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC AND ENABLE_FLATBUF_CONNECT)
|
||||
if(ENABLE_AMLOGIC AND ENABLE_FLATBUF_CONNECT)
|
||||
add_subdirectory(hyperion-aml)
|
||||
endif()
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
// QT includes
|
||||
#include <QTimer>
|
||||
|
||||
#include <grabber/AmlogicGrabber.h>
|
||||
#include <grabber/amlogic/AmlogicGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class AmlogicWrapper : public QObject
|
||||
|
@@ -1,25 +1,10 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-aml)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_AML_HEADERS
|
||||
AmlogicWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_AML_SOURCES
|
||||
hyperion-aml.cpp
|
||||
AmlogicWrapper.cpp
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${Hyperion_AML_HEADERS}
|
||||
${Hyperion_AML_SOURCES}
|
||||
AmlogicWrapper.h
|
||||
AmlogicWrapper.cpp
|
||||
hyperion-aml.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
@@ -29,27 +14,23 @@ target_link_libraries(${PROJECT_NAME}
|
||||
flatbuffers
|
||||
amlogic-grabber
|
||||
framebuffer-grabber
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
pcre16 dl z
|
||||
)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} pcre16 dl z)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_aml" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_aml")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_aml" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_aml" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_aml" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_aml")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_aml")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_aml")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -1,48 +1,31 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-dispmanx)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_Dispmanx_HEADERS
|
||||
add_executable(${PROJECT_NAME}
|
||||
DispmanxWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_Dispmanx_SOURCES
|
||||
hyperion-dispmanx.cpp
|
||||
DispmanxWrapper.cpp
|
||||
hyperion-dispmanx.cpp
|
||||
)
|
||||
|
||||
add_executable( ${PROJECT_NAME}
|
||||
${Hyperion_Dispmanx_HEADERS}
|
||||
${Hyperion_Dispmanx_SOURCES}
|
||||
)
|
||||
|
||||
target_link_libraries( ${PROJECT_NAME}
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion-utils
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
dispmanx-grabber
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_dispmanx" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_dispmanx")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_dispmanx" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_dispmanx" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_dispmanx" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_dispmanx")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_dispmanx")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_dispmanx")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -2,7 +2,7 @@
|
||||
// QT includes
|
||||
#include <QTimer>
|
||||
|
||||
#include <grabber/DispmanxFrameGrabber.h>
|
||||
#include <grabber/dispmanx/DispmanxFrameGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class DispmanxWrapper : public QObject
|
||||
@@ -16,7 +16,7 @@ public:
|
||||
);
|
||||
|
||||
const Image<ColorRgb> & getScreenshot();
|
||||
|
||||
|
||||
bool open();
|
||||
|
||||
///
|
||||
|
@@ -1,55 +1,35 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-framebuffer)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_FB_HEADERS
|
||||
add_executable(${PROJECT_NAME}
|
||||
FramebufferWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_FB_SOURCES
|
||||
hyperion-framebuffer.cpp
|
||||
FramebufferWrapper.cpp
|
||||
hyperion-framebuffer.cpp
|
||||
)
|
||||
|
||||
add_executable( ${PROJECT_NAME}
|
||||
${Hyperion_FB_HEADERS}
|
||||
${Hyperion_FB_SOURCES}
|
||||
)
|
||||
|
||||
target_link_libraries( ${PROJECT_NAME}
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion-utils
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
framebuffer-grabber
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
target_link_libraries( ${PROJECT_NAME}
|
||||
pcre16 dl z
|
||||
)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} pcre16 dl z)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_framebuffer" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_framebuffer")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_framebuffer" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_framebuffer" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_framebuffer" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_framebuffer")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_framebuffer")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_framebuffer")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -3,7 +3,7 @@
|
||||
// QT includes
|
||||
#include <QTimer>
|
||||
|
||||
#include <grabber/FramebufferFrameGrabber.h>
|
||||
#include <grabber/framebuffer/FramebufferFrameGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class FramebufferWrapper : public QObject
|
||||
|
@@ -1,43 +1,25 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-osx)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_OSX_HEADERS
|
||||
add_executable(${PROJECT_NAME}
|
||||
OsxWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_OSX_SOURCES
|
||||
hyperion-osx.cpp
|
||||
OsxWrapper.cpp
|
||||
hyperion-osx.cpp
|
||||
)
|
||||
|
||||
add_executable( ${PROJECT_NAME}
|
||||
${Hyperion_OSX_HEADERS}
|
||||
${Hyperion_OSX_SOURCES}
|
||||
)
|
||||
|
||||
target_link_libraries( ${PROJECT_NAME}
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion-utils
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
osx-grabber
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_osx" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_osx")
|
||||
|
@@ -2,7 +2,7 @@
|
||||
// QT includes
|
||||
#include <QTimer>
|
||||
|
||||
#include <grabber/OsxFrameGrabber.h>
|
||||
#include <grabber/osx/OsxFrameGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class OsxWrapper : public QObject
|
||||
|
@@ -1,32 +1,18 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-qt)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_QT_HEADERS
|
||||
QtWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_QT_SOURCES
|
||||
QtWrapper.cpp
|
||||
hyperion-qt.cpp
|
||||
)
|
||||
|
||||
# generate windows .rc file for this binary
|
||||
if (WIN32)
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/win/win_rc.cmake)
|
||||
generate_win_rc_file(${PROJECT_NAME})
|
||||
if(WIN32)
|
||||
# generate windows .rc file for this binary
|
||||
string(REPLACE "/" "\\\\" WIN_RC_ICON_PATH ${CMAKE_SOURCE_DIR}/cmake/nsis/installer.ico)
|
||||
configure_file(${CMAKE_SOURCE_DIR}/cmake/win/win.rc.in ${CMAKE_BINARY_DIR}/win.rc)
|
||||
set(WIN_RC_FILE ${CMAKE_BINARY_DIR}/win.rc)
|
||||
endif()
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${Hyperion_QT_HEADERS}
|
||||
${Hyperion_QT_SOURCES}
|
||||
${${PROJECT_NAME}_WIN_RC_PATH}
|
||||
QtWrapper.h
|
||||
QtWrapper.cpp
|
||||
hyperion-qt.cpp
|
||||
${WIN_RC_FILE}
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
@@ -34,28 +20,25 @@ target_link_libraries(${PROJECT_NAME}
|
||||
qt-grabber
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_qt" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_qt")
|
||||
elseif(NOT WIN32)
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_qt" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_qt")
|
||||
else()
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "hyperion_qt" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "hyperion_qt")
|
||||
endif()
|
||||
|
||||
if(CMAKE_HOST_UNIX AND NOT APPLE)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_qt" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_qt" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_qt" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_qt")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_qt")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_qt")
|
||||
endif()
|
||||
|
@@ -4,7 +4,7 @@
|
||||
#include <QTimer>
|
||||
|
||||
// Hyperion-Qt includes
|
||||
#include <grabber/QtGrabber.h>
|
||||
#include <grabber/qt/QtGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class QtWrapper : public QObject
|
||||
|
@@ -1,68 +1,50 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-remote)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
# The following I do not understand completely...
|
||||
# libQtCore.so uses some hardcoded library path inside which are incorrect after copying the file RPi file system
|
||||
# Therefore, an extra path is needed on which to find the required libraries
|
||||
IF ( EXISTS ${CMAKE_FIND_ROOT_PATH}/lib/arm-linux-gnueabihf )
|
||||
LINK_DIRECTORIES(${LINK_DIRECTORIES} ${CMAKE_FIND_ROOT_PATH}/lib/arm-linux-gnueabihf)
|
||||
ENDIF()
|
||||
|
||||
set(hyperion-remote_HEADERS
|
||||
JsonConnection.h)
|
||||
|
||||
set(hyperion-remote_SOURCES
|
||||
hyperion-remote.cpp
|
||||
JsonConnection.cpp)
|
||||
|
||||
# generate windows .rc file for this binary
|
||||
if (WIN32)
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/win/win_rc.cmake)
|
||||
generate_win_rc_file(${PROJECT_NAME})
|
||||
if(WIN32)
|
||||
# generate windows .rc file for this binary
|
||||
string(REPLACE "/" "\\\\" WIN_RC_ICON_PATH ${CMAKE_SOURCE_DIR}/cmake/nsis/installer.ico)
|
||||
configure_file(${CMAKE_SOURCE_DIR}/cmake/win/win.rc.in ${CMAKE_BINARY_DIR}/win.rc)
|
||||
set(WIN_RC_FILE ${CMAKE_BINARY_DIR}/win.rc)
|
||||
endif()
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${hyperion-remote_HEADERS}
|
||||
${hyperion-remote_SOURCES}
|
||||
${${PROJECT_NAME}_WIN_RC_PATH}
|
||||
JsonConnection.h
|
||||
JsonConnection.cpp
|
||||
hyperion-remote.cpp
|
||||
${WIN_RC_FILE}
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion-utils
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
pcre16 dl z
|
||||
)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} pcre16 dl z)
|
||||
endif()
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
if(ENABLE_EFFECTENGINE)
|
||||
target_link_libraries(${PROJECT_NAME} effectengine)
|
||||
target_link_libraries(${PROJECT_NAME} effectengine)
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_remote" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "." COMPONENT "hyperion_remote")
|
||||
elseif(NOT WIN32)
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_remote" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_remote")
|
||||
else()
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "hyperion_remote" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "hyperion_remote")
|
||||
endif()
|
||||
|
||||
if(CMAKE_HOST_UNIX AND NOT APPLE)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_remote" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_remote" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_remote" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_remote")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_remote")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_remote")
|
||||
endif()
|
||||
|
@@ -1,25 +1,10 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-v4l2)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_V4L2_HEADERS
|
||||
ScreenshotHandler.h
|
||||
)
|
||||
|
||||
set(Hyperion_V4L2_SOURCES
|
||||
hyperion-v4l2.cpp
|
||||
ScreenshotHandler.cpp
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${Hyperion_V4L2_HEADERS}
|
||||
${Hyperion_V4L2_SOURCES}
|
||||
ScreenshotHandler.h
|
||||
ScreenshotHandler.cpp
|
||||
hyperion-v4l2.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
@@ -28,27 +13,23 @@ target_link_libraries(${PROJECT_NAME}
|
||||
hyperion-utils
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
pcre16 dl z
|
||||
)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} pcre16 dl z)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_v4l2" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_v4l2")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_v4l2" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_v4l2" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_v4l2" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_v4l2")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_v4l2")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_v4l2")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -10,7 +10,7 @@
|
||||
#include <blackborder/BlackBorderProcessor.h>
|
||||
|
||||
// grabber includes
|
||||
#include "grabber/V4L2Grabber.h"
|
||||
#include "grabber/video/v4l2/V4L2Grabber.h"
|
||||
|
||||
// flatbuf includes
|
||||
#include <flatbufserver/FlatBufferConnection.h>
|
||||
@@ -255,7 +255,7 @@ int main(int argc, char** argv)
|
||||
SSDPDiscover discover;
|
||||
host = discover.getFirstService(searchType::STY_FLATBUFSERVER);
|
||||
#endif
|
||||
|
||||
|
||||
QHostAddress address;
|
||||
if (!NetUtils::resolveHostToAddress(log, host, address, port))
|
||||
{
|
||||
|
@@ -1,32 +1,14 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-x11)
|
||||
|
||||
find_package(X11 REQUIRED)
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Network Widgets REQUIRED)
|
||||
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${X11_INCLUDES}
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
if(APPLE)
|
||||
include_directories("/opt/X11/include")
|
||||
endif(APPLE)
|
||||
|
||||
set(Hyperion_X11_HEADERS
|
||||
X11Wrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_X11_SOURCES
|
||||
hyperion-x11.cpp
|
||||
X11Wrapper.cpp
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${Hyperion_X11_HEADERS}
|
||||
${Hyperion_X11_SOURCES}
|
||||
X11Wrapper.h
|
||||
X11Wrapper.cpp
|
||||
hyperion-x11.cpp
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
@@ -35,25 +17,19 @@ target_link_libraries(${PROJECT_NAME}
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
x11-grabber
|
||||
${X11_LIBRARIES}
|
||||
${X11_Xrandr_LIB}
|
||||
${X11_Xrender_LIB}
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_x11" )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_x11")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_x11" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_x11" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_x11" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_x11")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_x11")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_x11")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -4,7 +4,7 @@
|
||||
#include <QTimer>
|
||||
|
||||
// Hyperion-X11 includes
|
||||
#include <grabber/X11Grabber.h>
|
||||
#include <grabber/x11/X11Grabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
class X11Wrapper : public QObject
|
||||
|
@@ -1,48 +1,31 @@
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
project(hyperion-xcb)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Widgets REQUIRED)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}/../../libsrc/flatbufserver
|
||||
${FLATBUFFERS_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
set(Hyperion_XCB_HEADERS
|
||||
add_executable(${PROJECT_NAME}
|
||||
XcbWrapper.h
|
||||
)
|
||||
|
||||
set(Hyperion_XCB_SOURCES
|
||||
hyperion-xcb.cpp
|
||||
XcbWrapper.cpp
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
${Hyperion_XCB_HEADERS}
|
||||
${Hyperion_XCB_SOURCES}
|
||||
)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion-utils
|
||||
flatbufconnect
|
||||
flatbuffers
|
||||
xcb-grabber
|
||||
Qt${QT_VERSION_MAJOR}::Core
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
)
|
||||
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
else()
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
target_link_libraries(${PROJECT_NAME} ssdp)
|
||||
endif()
|
||||
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "hyperion_xcb")
|
||||
|
||||
if(CMAKE_HOST_UNIX)
|
||||
install(CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "hyperion_xcb" )
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_xcb" )
|
||||
install(CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME} )" COMPONENT "hyperion_xcb" )
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "hyperion_xcb")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME "${PROJECT_NAME}" COMPONENT "hyperion_xcb")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "hyperion_xcb")
|
||||
endif(CMAKE_HOST_UNIX)
|
||||
|
@@ -4,7 +4,7 @@
|
||||
#include <QTimer>
|
||||
|
||||
// Hyperion-Xcb includes
|
||||
#include <grabber/XcbGrabber.h>
|
||||
#include <grabber/xcb/XcbGrabber.h>
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
|
||||
//Utils includes
|
||||
|
@@ -1,41 +1,32 @@
|
||||
if (APPLE)
|
||||
if(APPLE)
|
||||
project(Hyperion)
|
||||
else()
|
||||
project(hyperiond)
|
||||
endif()
|
||||
|
||||
if(ENABLE_EFFECTENGINE)
|
||||
if (NOT CMAKE_VERSION VERSION_LESS "3.12")
|
||||
find_package(Python3 COMPONENTS Interpreter Development REQUIRED)
|
||||
include_directories(${Python3_INCLUDE_DIRS} ${Python3_INCLUDE_DIRS}/..)
|
||||
else()
|
||||
find_package (PythonLibs ${PYTHON_VERSION_STRING} EXACT) # Maps PythonLibs to the PythonInterp version of the main cmake
|
||||
include_directories(${PYTHON_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS}/..)
|
||||
endif()
|
||||
endif ()
|
||||
#####################################
|
||||
############ Preparation ############
|
||||
#####################################
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Network Gui Widgets REQUIRED)
|
||||
if(WIN32)
|
||||
# generate windows .rc file for this binary
|
||||
string(REPLACE "/" "\\\\" WIN_RC_ICON_PATH ${CMAKE_SOURCE_DIR}/cmake/nsis/installer.ico)
|
||||
configure_file(${CMAKE_SOURCE_DIR}/cmake/win/win.rc.in ${CMAKE_BINARY_DIR}/win.rc)
|
||||
set(WIN_RC_FILE ${CMAKE_BINARY_DIR}/win.rc)
|
||||
|
||||
# generate windows .rc file for this binary
|
||||
if (WIN32)
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/win/win_rc.cmake)
|
||||
generate_win_rc_file(${PROJECT_NAME})
|
||||
endif(WIN32)
|
||||
|
||||
# include resource files for macos bundle (copy LICENSE file and correct line breaks)
|
||||
if (APPLE)
|
||||
# promote hyperiond as GUI app
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup")
|
||||
elseif(APPLE)
|
||||
# include resource files for macos bundle (copy LICENSE file and correct line breaks)
|
||||
configure_file(${CMAKE_SOURCE_DIR}/LICENSE ${CMAKE_BINARY_DIR}/LICENSE COPYONLY)
|
||||
execute_process(COMMAND bash -c "perl -pi -e 's/\n/\r/g' ${CMAKE_BINARY_DIR}/LICENSE")
|
||||
set(BUNDLE_RESOURCE_FILES ${CMAKE_SOURCE_DIR}/cmake/osxbundle/Hyperion.icns ${CMAKE_BINARY_DIR}/LICENSE)
|
||||
set_source_files_properties(${BUNDLE_RESOURCE_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
||||
endif(APPLE)
|
||||
set(MACOS_BUNDLE_RESOURCE_FILES ${CMAKE_SOURCE_DIR}/cmake/osxbundle/Hyperion.icns ${CMAKE_BINARY_DIR}/LICENSE)
|
||||
set_source_files_properties(${MACOS_BUNDLE_RESOURCE_FILES} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
||||
endif()
|
||||
|
||||
if (UNIX)
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS DBus QUIET )
|
||||
if (Qt${QT_VERSION_MAJOR}DBus_FOUND)
|
||||
set(hyperiond_POWER_MNG_DBUS "Qt${QT_VERSION_MAJOR}::DBus")
|
||||
endif()
|
||||
endif(UNIX)
|
||||
#####################################
|
||||
########### General steps ###########
|
||||
#####################################
|
||||
|
||||
add_executable(${PROJECT_NAME}
|
||||
console.h
|
||||
@@ -45,19 +36,10 @@ add_executable(${PROJECT_NAME}
|
||||
systray.cpp
|
||||
SuspendHandler.cpp
|
||||
main.cpp
|
||||
${hyperiond_WIN_RC_PATH}
|
||||
${BUNDLE_RESOURCE_FILES}
|
||||
${WIN_RC_FILE}
|
||||
${MACOS_BUNDLE_RESOURCE_FILES}
|
||||
)
|
||||
|
||||
if (UNIX AND NOT APPLE AND Qt${QT_VERSION_MAJOR}DBus_FOUND)
|
||||
target_compile_definitions(${PROJECT_NAME} PUBLIC HYPERION_HAS_DBUS)
|
||||
endif()
|
||||
|
||||
# promote hyperiond as GUI app
|
||||
if (WIN32)
|
||||
target_link_options(${PROJECT_NAME} PUBLIC /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup)
|
||||
endif(WIN32)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
commandline
|
||||
hyperion
|
||||
@@ -70,18 +52,16 @@ target_link_libraries(${PROJECT_NAME}
|
||||
Qt${QT_VERSION_MAJOR}::Gui
|
||||
Qt${QT_VERSION_MAJOR}::Network
|
||||
Qt${QT_VERSION_MAJOR}::Widgets
|
||||
${hyperiond_POWER_MNG_DBUS}
|
||||
)
|
||||
|
||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS DBus QUIET)
|
||||
if(Qt${QT_VERSION_MAJOR}DBus_FOUND)
|
||||
target_link_libraries(${PROJECT_NAME} "Qt${QT_VERSION_MAJOR}::DBus")
|
||||
endif()
|
||||
|
||||
if(ENABLE_EFFECTENGINE)
|
||||
target_link_libraries(${PROJECT_NAME} effectengine python)
|
||||
|
||||
if (NOT CMAKE_VERSION VERSION_LESS "3.12")
|
||||
target_link_libraries( ${PROJECT_NAME} ${Python3_LIBRARIES} )
|
||||
else()
|
||||
target_link_libraries( ${PROJECT_NAME} ${PYTHON_LIBRARIES} )
|
||||
endif()
|
||||
endif ()
|
||||
endif()
|
||||
|
||||
if(ENABLE_FLATBUF_SERVER)
|
||||
target_link_libraries(${PROJECT_NAME} flatbufserver)
|
||||
@@ -91,71 +71,71 @@ if(ENABLE_PROTOBUF_SERVER)
|
||||
target_link_libraries(${PROJECT_NAME} protoserver)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
#Qt${QT_VERSION_MAJOR}::Core
|
||||
pcre16 dl z
|
||||
)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} pcre16 dl z)
|
||||
endif(ENABLE_AMLOGIC)
|
||||
|
||||
if (ENABLE_DISPMANX)
|
||||
if(ENABLE_DISPMANX)
|
||||
target_link_libraries(${PROJECT_NAME} dispmanx-grabber)
|
||||
endif (ENABLE_DISPMANX)
|
||||
|
||||
if (ENABLE_FB)
|
||||
if(ENABLE_FB)
|
||||
target_link_libraries(${PROJECT_NAME} framebuffer-grabber)
|
||||
endif (ENABLE_FB)
|
||||
|
||||
if (ENABLE_OSX)
|
||||
if(ENABLE_OSX)
|
||||
target_link_libraries(${PROJECT_NAME} osx-grabber)
|
||||
endif (ENABLE_OSX)
|
||||
|
||||
if (ENABLE_V4L2)
|
||||
if(ENABLE_V4L2)
|
||||
target_link_libraries(${PROJECT_NAME} v4l2-grabber)
|
||||
endif ()
|
||||
endif()
|
||||
|
||||
if (ENABLE_MF)
|
||||
if(ENABLE_MF)
|
||||
target_link_libraries(${PROJECT_NAME} mf-grabber)
|
||||
endif (ENABLE_MF)
|
||||
|
||||
if (ENABLE_AUDIO)
|
||||
if(ENABLE_AUDIO)
|
||||
target_link_libraries(hyperiond audio-grabber)
|
||||
endif()
|
||||
|
||||
if (ENABLE_AMLOGIC)
|
||||
if(ENABLE_AMLOGIC)
|
||||
target_link_libraries(${PROJECT_NAME} amlogic-grabber)
|
||||
endif (ENABLE_AMLOGIC)
|
||||
|
||||
if (ENABLE_X11)
|
||||
if(ENABLE_X11)
|
||||
if(APPLE)
|
||||
include_directories("/opt/X11/include")
|
||||
endif(APPLE)
|
||||
target_link_libraries(${PROJECT_NAME} x11-grabber)
|
||||
endif (ENABLE_X11)
|
||||
|
||||
if (ENABLE_XCB)
|
||||
if(ENABLE_XCB)
|
||||
target_link_libraries(${PROJECT_NAME} xcb-grabber)
|
||||
endif (ENABLE_XCB)
|
||||
|
||||
if (ENABLE_QT)
|
||||
if(ENABLE_QT)
|
||||
target_link_libraries(${PROJECT_NAME} qt-grabber)
|
||||
endif (ENABLE_QT)
|
||||
|
||||
if (ENABLE_DX)
|
||||
include_directories(${DIRECTX9_INCLUDE_DIRS})
|
||||
if(ENABLE_DX)
|
||||
target_link_libraries(${PROJECT_NAME} directx-grabber)
|
||||
endif (ENABLE_DX)
|
||||
|
||||
if (ENABLE_CEC)
|
||||
target_link_libraries(${PROJECT_NAME} cechandler)
|
||||
if(ENABLE_CEC)
|
||||
target_link_libraries(${PROJECT_NAME} cechandler)
|
||||
endif (ENABLE_CEC)
|
||||
|
||||
if (ENABLE_MDNS)
|
||||
if(ENABLE_MDNS)
|
||||
target_link_libraries(${PROJECT_NAME} mdns)
|
||||
endif()
|
||||
|
||||
if (APPLE)
|
||||
set_target_properties( ${PROJECT_NAME} PROPERTIES
|
||||
#####################################
|
||||
########### Install steps ###########
|
||||
#####################################
|
||||
|
||||
if(APPLE)
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES
|
||||
MACOSX_BUNDLE TRUE
|
||||
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_SOURCE_DIR}/cmake/osxbundle/Info.plist.in
|
||||
MACOSX_BUNDLE_BUNDLE_NAME "Hyperion"
|
||||
@@ -168,69 +148,83 @@ if (APPLE)
|
||||
MACOSX_BUNDLE_LONG_VERSION_STRING ${HYPERION_VERSION}
|
||||
)
|
||||
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION . COMPONENT "Hyperion")
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION . COMPONENT "Hyperion")
|
||||
elseif(NOT WIN32)
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "Hyperion" )
|
||||
install ( DIRECTORY ${CMAKE_SOURCE_DIR}/bin/service DESTINATION "share/hyperion/" COMPONENT "Hyperion" )
|
||||
install ( FILES ${CMAKE_SOURCE_DIR}/effects/readme.txt DESTINATION "share/hyperion/effects" COMPONENT "Hyperion" )
|
||||
install ( FILES ${CMAKE_SOURCE_DIR}/resources/icons/hyperion-icon-32px.png DESTINATION "share/hyperion/icons" COMPONENT "Hyperion" )
|
||||
# install Hyperion/service files/effect folder
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "share/hyperion/bin" COMPONENT "Hyperion")
|
||||
install (DIRECTORY ${CMAKE_SOURCE_DIR}/bin/service DESTINATION "share/hyperion" COMPONENT "Hyperion")
|
||||
install (FILES ${CMAKE_SOURCE_DIR}/effects/readme.txt DESTINATION "share/hyperion/effects" COMPONENT "Hyperion")
|
||||
|
||||
# Desktop file for Hyperion
|
||||
install ( FILES ${CMAKE_SOURCE_DIR}/cmake/desktop/hyperiond_128.png DESTINATION "share/hyperion/desktop" COMPONENT "Hyperion" )
|
||||
install ( FILES ${CMAKE_SOURCE_DIR}/cmake/desktop/hyperiond.desktop DESTINATION "share/hyperion/desktop" COMPONENT "Hyperion" )
|
||||
# install Hyperion icons
|
||||
set(ICON_SIZES 16 22 24 32 36 48 64 72 96 128 192 256 512)
|
||||
foreach(size ${ICON_SIZES})
|
||||
set(ICONS_FROM "${CMAKE_SOURCE_DIR}/resources/icons/hyperion-${size}px.png")
|
||||
set(ICONS_TO "share/hyperion/icons/${size}x${size}/apps/")
|
||||
install(FILES ${ICONS_FROM} DESTINATION ${ICONS_TO} RENAME "hyperion.png" COMPONENT "Hyperion")
|
||||
endforeach(size)
|
||||
|
||||
# install desktop/appstream file
|
||||
install (FILES ${CMAKE_SOURCE_DIR}/cmake/desktop/hyperion.metainfo.xml DESTINATION "share/hyperion/desktop" COMPONENT "Hyperion")
|
||||
install (FILES ${CMAKE_SOURCE_DIR}/cmake/desktop/hyperion.desktop DESTINATION "share/hyperion/desktop" COMPONENT "Hyperion")
|
||||
else()
|
||||
install ( TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "Hyperion" )
|
||||
install ( FILES ${CMAKE_SOURCE_DIR}/effects/readme.txt DESTINATION "effects" COMPONENT "Hyperion" )
|
||||
|
||||
#set( CMAKE_INSTALL_UCRT_LIBRARIES TRUE )
|
||||
#set( CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE )
|
||||
#include( InstallRequiredSystemLibraries )
|
||||
install (TARGETS ${PROJECT_NAME} DESTINATION "bin" COMPONENT "Hyperion")
|
||||
install (FILES ${CMAKE_SOURCE_DIR}/effects/readme.txt DESTINATION "effects" COMPONENT "Hyperion")
|
||||
endif()
|
||||
|
||||
if (CMAKE_HOST_UNIX AND NOT APPLE)
|
||||
install( CODE "EXECUTE_PROCESS(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\" )" COMPONENT "Hyperion" )
|
||||
install( FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME ${PROJECT_NAME} COMPONENT "Hyperion" )
|
||||
install( CODE "FILE (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "Hyperion" )
|
||||
install( FILES ${CMAKE_SOURCE_DIR}/bin/scripts/updateHyperionUser.sh DESTINATION "share/hyperion/scripts" COMPONENT "Hyperion" )
|
||||
if(CMAKE_HOST_UNIX AND NOT APPLE)
|
||||
install(CODE "execute_process(COMMAND ln -sf \"../share/hyperion/bin/${PROJECT_NAME}\" \"${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}\")" COMPONENT "Hyperion")
|
||||
install(FILES "${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME}" DESTINATION "bin" RENAME ${PROJECT_NAME} COMPONENT "Hyperion")
|
||||
install(CODE "file (REMOVE ${CMAKE_BINARY_DIR}/symlink_${PROJECT_NAME})" COMPONENT "Hyperion")
|
||||
install(FILES ${CMAKE_SOURCE_DIR}/bin/scripts/updateHyperionUser.sh DESTINATION "share/hyperion/scripts" COMPONENT "Hyperion")
|
||||
endif()
|
||||
|
||||
######################################
|
||||
########## Additional steps ##########
|
||||
######################################
|
||||
|
||||
# Deploy Qt DLLs into the binary folder.
|
||||
# This is necessary for starting the application from within the IDE
|
||||
|
||||
if (WIN32)
|
||||
if(WIN32)
|
||||
get_target_property(QT_QMAKE_EXECUTABLE Qt${QT_VERSION_MAJOR}::qmake IMPORTED_LOCATION)
|
||||
get_filename_component(QT_BIN_DIR "${QT_QMAKE_EXECUTABLE}" DIRECTORY)
|
||||
find_program(WINDEPLOYQT_EXECUTABLE windeployqt HINTS "${QT_BIN_DIR}")
|
||||
|
||||
if (NOT WINDEPLOYQT_EXECUTABLE)
|
||||
if(NOT WINDEPLOYQT_EXECUTABLE)
|
||||
find_program(WINDEPLOYQT_EXECUTABLE windeployqt)
|
||||
endif()
|
||||
|
||||
if (WINDEPLOYQT_EXECUTABLE AND NOT CMAKE_GITHUB_ACTION)
|
||||
if(WINDEPLOYQT_EXECUTABLE AND NOT CMAKE_GITHUB_ACTION)
|
||||
set(WINDEPLOYQT_PARAMS_RUNTIME --verbose 0 --no-compiler-runtime --no-opengl-sw --no-system-d3d-compiler)
|
||||
message(STATUS "Found windeployqt: ${WINDEPLOYQT_EXECUTABLE} PATH_HINT:${QT_BIN_DIR}")
|
||||
add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND ${WINDEPLOYQT_EXECUTABLE} ${WINDEPLOYQT_PARAMS_RUNTIME} "$<TARGET_FILE:${PROJECT_NAME}>")
|
||||
endif()
|
||||
|
||||
find_package(OpenSSL REQUIRED)
|
||||
if (OPENSSL_FOUND)
|
||||
if(OPENSSL_FOUND)
|
||||
string(REGEX MATCHALL "[0-9]+" openssl_versions "${OPENSSL_VERSION}")
|
||||
list(GET openssl_versions 0 openssl_version_major)
|
||||
list(GET openssl_versions 1 openssl_version_minor)
|
||||
|
||||
set(library_suffix "-${openssl_version_major}_${openssl_version_minor}")
|
||||
if (CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
string(APPEND library_suffix "-x64")
|
||||
set(open_ssl_version_suffix)
|
||||
if(openssl_version_major VERSION_EQUAL 1 AND openssl_version_minor VERSION_EQUAL 1)
|
||||
set(open_ssl_version_suffix "-1_1")
|
||||
else()
|
||||
set(open_ssl_version_suffix "-3")
|
||||
endif()
|
||||
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
string(APPEND open_ssl_version_suffix "-x64")
|
||||
endif()
|
||||
|
||||
find_file(OPENSSL_SSL
|
||||
NAMES "libssl${library_suffix}.dll"
|
||||
NAMES "libssl${open_ssl_version_suffix}.dll"
|
||||
PATHS ${OPENSSL_INCLUDE_DIR}/.. ${OPENSSL_INCLUDE_DIR}/../bin
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
find_file(OPENSSL_CRYPTO
|
||||
NAMES "libcrypto${library_suffix}.dll"
|
||||
NAMES "libcrypto${open_ssl_version_suffix}.dll"
|
||||
PATHS ${OPENSSL_INCLUDE_DIR}/.. ${OPENSSL_INCLUDE_DIR}/../bin
|
||||
NO_DEFAULT_PATH
|
||||
)
|
||||
@@ -248,11 +242,11 @@ if(ENABLE_DEPLOY_DEPENDENCIES)
|
||||
# Deploy all dependencies for package creation
|
||||
include(${CMAKE_SOURCE_DIR}/cmake/Dependencies.cmake)
|
||||
|
||||
if (APPLE) #macOS
|
||||
if(APPLE) #macOS
|
||||
DeployMacOS(${PROJECT_NAME})
|
||||
elseif (NOT WIN32) # Linux
|
||||
DeployLinux(${PROJECT_NAME})
|
||||
elseif(WIN32) # Windows
|
||||
DeployWindows(${PROJECT_NAME})
|
||||
endif ()
|
||||
endif()
|
||||
endif(ENABLE_DEPLOY_DEPENDENCIES)
|
||||
|
@@ -7,62 +7,62 @@
|
||||
#include <hyperion/HyperionIManager.h>
|
||||
|
||||
#ifdef ENABLE_DISPMANX
|
||||
#include <grabber/DispmanxWrapper.h>
|
||||
#include <grabber/dispmanx/DispmanxWrapper.h>
|
||||
#else
|
||||
typedef QObject DispmanxWrapper;
|
||||
#endif
|
||||
|
||||
#if defined(ENABLE_V4L2) || defined(ENABLE_MF)
|
||||
#include <grabber/VideoWrapper.h>
|
||||
#include <grabber/video/VideoWrapper.h>
|
||||
#else
|
||||
typedef QObject VideoWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_FB
|
||||
#include <grabber/FramebufferWrapper.h>
|
||||
#include <grabber/framebuffer/FramebufferWrapper.h>
|
||||
#else
|
||||
typedef QObject FramebufferWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_AMLOGIC
|
||||
#include <grabber/AmlogicWrapper.h>
|
||||
#include <grabber/amlogic/AmlogicWrapper.h>
|
||||
#else
|
||||
typedef QObject AmlogicWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_OSX
|
||||
#include <grabber/OsxWrapper.h>
|
||||
#include <grabber/osx/OsxWrapper.h>
|
||||
#else
|
||||
typedef QObject OsxWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_X11
|
||||
#include <grabber/X11Wrapper.h>
|
||||
#include <grabber/x11/X11Wrapper.h>
|
||||
#else
|
||||
typedef QObject X11Wrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_XCB
|
||||
#include <grabber/XcbWrapper.h>
|
||||
#include <grabber/xcb/XcbWrapper.h>
|
||||
#else
|
||||
typedef QObject XcbWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_QT
|
||||
#include <grabber/QtWrapper.h>
|
||||
#include <grabber/qt/QtWrapper.h>
|
||||
#else
|
||||
typedef QObject QtWrapper;
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_DX
|
||||
#include <grabber/DirectXWrapper.h>
|
||||
#include <grabber/directx/DirectXWrapper.h>
|
||||
#else
|
||||
typedef QObject DirectXWrapper;
|
||||
#endif
|
||||
|
||||
#include <hyperion/GrabberWrapper.h>
|
||||
#ifdef ENABLE_AUDIO
|
||||
#include <grabber/AudioWrapper.h>
|
||||
#include <grabber/audio/AudioWrapper.h>
|
||||
#else
|
||||
typedef QObject AudioWrapper;
|
||||
#endif
|
||||
@@ -211,8 +211,8 @@ private:
|
||||
OsxWrapper* _osxGrabber;
|
||||
QtWrapper* _qtGrabber;
|
||||
DirectXWrapper* _dxGrabber;
|
||||
AudioWrapper* _audioGrabber;
|
||||
SSDPHandler* _ssdp;
|
||||
AudioWrapper* _audioGrabber;
|
||||
#ifdef ENABLE_CEC
|
||||
CECHandler* _cecHandler;
|
||||
#endif
|
||||
|
@@ -115,7 +115,7 @@ QCoreApplication* createApplication(int &argc, char *argv[])
|
||||
app->addLibraryPath(QApplication::applicationDirPath() + "/../lib");
|
||||
app->setApplicationDisplayName("Hyperion");
|
||||
#ifndef __APPLE__
|
||||
app->setWindowIcon(QIcon(":/hyperion-icon-32px.png"));
|
||||
app->setWindowIcon(QIcon(":/hyperion-32px.png"));
|
||||
#endif
|
||||
return app;
|
||||
}
|
||||
|
@@ -33,8 +33,8 @@ SysTray::SysTray(HyperionDaemon *hyperiond)
|
||||
, _hyperiond(hyperiond)
|
||||
, _hyperion(nullptr)
|
||||
, _instanceManager(HyperionIManager::getInstance())
|
||||
, _suspendHandler (hyperiond->getSuspendHandlerInstance())
|
||||
, _webPort(8090)
|
||||
, _suspendHandler (hyperiond->getSuspendHandlerInstance())
|
||||
{
|
||||
Q_INIT_RESOURCE(resources);
|
||||
|
||||
@@ -281,7 +281,7 @@ void SysTray::handleInstanceStateChange(InstanceState state, quint8 instance, co
|
||||
connect(quitAction, &QAction::triggered, _trayIcon, &QSystemTrayIcon::hide, Qt::DirectConnection);
|
||||
connect(&_colorDlg, &QColorDialog::currentColorChanged, this, &SysTray::setColor);
|
||||
|
||||
QIcon icon(":/hyperion-icon-32px.png");
|
||||
QIcon icon(":/hyperion-32px.png");
|
||||
_trayIcon->setIcon(icon);
|
||||
_trayIcon->show();
|
||||
setWindowIcon(icon);
|
||||
|
Reference in New Issue
Block a user