Merge branch 'main' into cudalowlatencydemo-build
commit
cc04561a66
103
CMakeLists.txt
103
CMakeLists.txt
|
@ -3,94 +3,79 @@ cmake_minimum_required(VERSION 3.10)
|
|||
project(ntv2)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/")
|
||||
# AJA Includes
|
||||
|
||||
# AJA includes
|
||||
include(AJAHelpers)
|
||||
include(BuildOptions)
|
||||
include(CommonDefines)
|
||||
include(CommonFlags)
|
||||
include(CommonPaths)
|
||||
include(CommonVars)
|
||||
include(AJABuildOptions)
|
||||
include(AJACommonDefines)
|
||||
include(AJACommonFlags)
|
||||
include(AJACommonPaths)
|
||||
include(AJACommonVars)
|
||||
include(AJAVersionConfig)
|
||||
# CMake includes
|
||||
include(GNUInstallDirs)
|
||||
|
||||
# Override the following variables to set the NTV2 SDK version defines and strings used for the SDK and apps
|
||||
if (AJA_BUILDING_CMAKE)
|
||||
string(TIMESTAMP AJA_BUILD_YEAR "%Y")
|
||||
string(TIMESTAMP DATETIME_NOW "\"%A %b %d, %Y (%m/%d/%Y @ %H:%M:%S GMT+8)\"")
|
||||
string(TIMESTAMP DATETIME_NOW "\"%m/%d/%Y +8:%H:%M:%S\"")
|
||||
if (NOT AJA_NTV2_SDK_VERSION_MAJOR)
|
||||
set(AJA_NTV2_SDK_VERSION_MAJOR 16)
|
||||
endif()
|
||||
if (NOT AJA_NTV2_SDK_VERSION_MINOR)
|
||||
set(AJA_NTV2_SDK_VERSION_MINOR 2)
|
||||
endif()
|
||||
if (NOT AJA_NTV2_SDK_VERSION_POINT)
|
||||
set(AJA_NTV2_SDK_VERSION_POINT 0)
|
||||
endif()
|
||||
if (NOT AJA_NTV2_SDK_BUILD_NUMBER)
|
||||
set(AJA_NTV2_SDK_BUILD_NUMBER 1)
|
||||
endif()
|
||||
set(AJA_NTV2_SDK_BUILD_DATETIME ${DATETIME_NOW})
|
||||
set(AJA_NTV2_SDK_BUILD_TYPE "\"d\"") # r = release, d = debug, b = beta
|
||||
set(AJA_NTV2_VER_STR "${AJA_NTV2_SDK_VERSION_MAJOR}.${AJA_NTV2_SDK_VERSION_MINOR}.${AJA_NTV2_SDK_VERSION_POINT}")
|
||||
set(AJA_NTV2_VER_STR_LONG "${AJA_NTV2_VER_STR}.${AJA_NTV2_SDK_BUILD_NUMBER}")
|
||||
string(REPLACE "." "," AJA_NTV2_VER_STR_COMMA "${AJA_NTV2_VER_STR_LONG}")
|
||||
|
||||
string(REPLACE "\"" "" aja_ntv2_build_type_letter "${AJA_NTV2_SDK_BUILD_TYPE}")
|
||||
message(STATUS "ntv2 version: ${AJA_NTV2_VER_STR} ${aja_ntv2_build_type_letter}${AJA_NTV2_SDK_BUILD_NUMBER}")
|
||||
endif()
|
||||
|
||||
message(STATUS "Platform: ${CMAKE_SYSTEM_NAME}")
|
||||
message(STATUS "Arch: ${CMAKE_HOST_SYSTEM_PROCESSOR}")
|
||||
message(STATUS "Compiler: ${CMAKE_CXX_COMPILER_ID}")
|
||||
aja_message(STATUS "Platform: ${CMAKE_SYSTEM_NAME}")
|
||||
aja_message(STATUS "Arch: ${CMAKE_HOST_SYSTEM_PROCESSOR}")
|
||||
aja_message(STATUS "Compiler: ${CMAKE_CXX_COMPILER_ID}")
|
||||
aja_message(STATUS "Install Prefix: ${CMAKE_INSTALL_PREFIX}")
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
message(STATUS "Windows API Version: ${CMAKE_SYSTEM_VERSION}")
|
||||
aja_message(STATUS "Windows API Version: ${CMAKE_SYSTEM_VERSION}")
|
||||
string(REPLACE "." ";" AJA_WIN_API_VER "${CMAKE_SYSTEM_VERSION}")
|
||||
list(GET AJA_WIN_API_VER 0 AJA_WIN_API_VER_MAJOR)
|
||||
list(GET AJA_WIN_API_VER 1 AJA_WIN_API_VER_MINOR)
|
||||
list(GET AJA_WIN_API_VER 2 AJA_WIN_API_VER_BUILD)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
message (STATUS "macOS Architectures: ${CMAKE_OSX_ARCHITECTURES}")
|
||||
message (STATUS "macOS Deployment Target: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||
aja_message(STATUS "macOS Architectures: ${CMAKE_OSX_ARCHITECTURES}")
|
||||
aja_message(STATUS "macOS Deployment Target: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported platform: ${CMAKE_SYSTEM_NAME}")
|
||||
endif()
|
||||
|
||||
message(STATUS "CMAKE_INSTALL_PREFIX = ${CMAKE_INSTALL_PREFIX}")
|
||||
|
||||
# Optional build artifacts output directory
|
||||
if (AJA_DEPLOY_OUTPUTS)
|
||||
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY
|
||||
"${AJA_CMAKE_DIR}/../out/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_ID}-${AJA_BITS}bit/lib")
|
||||
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY
|
||||
"${AJA_CMAKE_DIR}/../out/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_ID}-${AJA_BITS}bit/lib")
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
||||
"${AJA_CMAKE_DIR}/../out/${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_ID}-${AJA_BITS}bit/bin")
|
||||
aja_message(FATAL_ERROR "Unsupported platform: ${CMAKE_SYSTEM_NAME}")
|
||||
endif()
|
||||
|
||||
# Add NTV2 sub-directories to CMake build config
|
||||
if (AJA_BUILD_APPS AND EXISTS ${AJA_APPS_ROOT})
|
||||
message(STATUS "Adding ajaapps...")
|
||||
aja_message(STATUS "adding ajaapps...")
|
||||
add_subdirectory(ajaapps)
|
||||
endif()
|
||||
if (AJA_BUILD_DRIVER AND EXISTS ${AJA_DRIVER_ROOT})
|
||||
message(STATUS "Adding ajadriver...")
|
||||
aja_message(STATUS "adding ajadriver...")
|
||||
add_subdirectory(ajadriver)
|
||||
endif()
|
||||
if (AJA_BUILD_LIBS AND EXISTS ${AJA_LIBRARIES_ROOT})
|
||||
message(STATUS "Adding ajalibraries...")
|
||||
aja_message(STATUS "adding ajalibraries...")
|
||||
add_subdirectory(ajalibraries)
|
||||
endif()
|
||||
if (AJA_BUILD_PLUGINS AND EXISTS ${AJA_PLUGINS_ROOT})
|
||||
message(STATUS "Adding ajaplugins...")
|
||||
aja_message(STATUS "adding ajaplugins...")
|
||||
add_subdirectory(ajaplugins)
|
||||
endif()
|
||||
if (AJA_BUILD_QA AND EXISTS ${AJA_QA_ROOT})
|
||||
message(STATUS "Adding qa...")
|
||||
aja_message(STATUS "adding qa...")
|
||||
add_subdirectory(qa)
|
||||
endif()
|
||||
if (AJA_BUILD_NONAJA AND EXISTS ${NON_AJA_ROOT})
|
||||
message(STATUS "Adding non-aja...")
|
||||
add_subdirectory(non-aja)
|
||||
aja_message(STATUS "adding non-aja...")
|
||||
add_subdirectory(non-aja)
|
||||
endif()
|
||||
|
||||
# Install NTV2 CMake files
|
||||
if (AJA_INSTALL_HEADERS OR AJA_INSTALL_SOURCES)
|
||||
install(FILES cmake/AJABuildOptions.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJACommonDefines.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJACommonFlags.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJACommonPaths.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJACommonVars.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJAHelpers.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJAQtHelpers.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/AJAVersionConfig.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/linux_ldd_qt_libs.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake)
|
||||
install(FILES cmake/toolchain/aja-ci-toolchain.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/toolchain)
|
||||
install(FILES cmake/toolchain/clang-unix_toolchain.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/toolchain)
|
||||
install(FILES cmake/toolchain/clang-win_toolchain.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/toolchain)
|
||||
install(FILES cmake/toolchain/msvc_toolchain.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/toolchain)
|
||||
install(FILES cmake/bundle/linux/lin-ver.json.in DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/bundle/linux)
|
||||
install(FILES cmake/bundle/mac/Info.plist.in DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/bundle/mac)
|
||||
install(FILES cmake/bundle/windows/win-ver.rc.in DESTINATION ${CMAKE_INSTALL_PREFIX}/cmake/bundle/windows)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/)
|
||||
endif()
|
||||
|
|
|
@ -1,87 +1,88 @@
|
|||
# aja apps
|
||||
if (AJA_BUILD_APPS)
|
||||
# aja core demos
|
||||
add_subdirectory(crossplatform/demoapps/ntv2burn)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2burn4kquadrant)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2capture)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2capture4k)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2capture8k)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2dolbyplayer)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2enumerateboards)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2fieldburn)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2hdrsetup)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2llburn)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2outputtestpattern)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2player)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2player4k)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2player8k)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2switchbitfile)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2burn)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2burn4kquadrant)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2capture)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2capture4k)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2capture8k)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2dolbyplayer)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2enumerateboards)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2fieldburn)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2hdrsetup)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2llburn)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2outputtestpattern)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2player)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2player4k)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2player8k)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2switchbitfile)
|
||||
|
||||
# nvidia demos
|
||||
add_subdirectory(crossplatform/demoapps/NVIDIA/cudalowlatencydemo)
|
||||
add_subdirectory(crossplatform/demoapps/NVIDIA/dvplowlatencydemo)
|
||||
aja_add_subdirectory(crossplatform/demoapps/NVIDIA/cudalowlatencydemo)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/NVIDIA/dvplowlatencydemo) # TODO(paulh): Need to audit dependencies for open-source distribution.
|
||||
|
||||
# tools
|
||||
add_subdirectory(crossplatform/logjammer)
|
||||
add_subdirectory(crossplatform/logreader)
|
||||
add_subdirectory(crossplatform/ntv2firmwareinstaller)
|
||||
add_subdirectory(crossplatform/ntv2thermo)
|
||||
add_subdirectory(crossplatform/pciwhacker)
|
||||
add_subdirectory(crossplatform/rdmawhacker)
|
||||
add_subdirectory(crossplatform/regio)
|
||||
add_subdirectory(crossplatform/supportlog)
|
||||
add_subdirectory(crossplatform/testaux)
|
||||
add_subdirectory(crossplatform/testcrc)
|
||||
add_subdirectory(crossplatform/testframe)
|
||||
add_subdirectory(crossplatform/testp2p)
|
||||
add_subdirectory(crossplatform/testrdma)
|
||||
add_subdirectory(crossplatform/vpidtool)
|
||||
aja_add_subdirectory(crossplatform/logjammer)
|
||||
aja_add_subdirectory(crossplatform/logreader)
|
||||
aja_add_subdirectory(crossplatform/ntv2firmwareinstaller)
|
||||
aja_add_subdirectory(crossplatform/ntv2thermo)
|
||||
aja_add_subdirectory(crossplatform/pciwhacker)
|
||||
aja_add_subdirectory(crossplatform/rdmawhacker)
|
||||
aja_add_subdirectory(crossplatform/regio)
|
||||
aja_add_subdirectory(crossplatform/supportlog)
|
||||
aja_add_subdirectory(crossplatform/testaux)
|
||||
aja_add_subdirectory(crossplatform/testcrc)
|
||||
aja_add_subdirectory(crossplatform/testframe)
|
||||
aja_add_subdirectory(crossplatform/testp2p)
|
||||
aja_add_subdirectory(crossplatform/testrdma)
|
||||
aja_add_subdirectory(crossplatform/vpidtool)
|
||||
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
# retail apps/services
|
||||
add_subdirectory(crossplatform/ajadaemon)
|
||||
add_subdirectory(crossplatform/controlpanel)
|
||||
add_subdirectory(crossplatform/controlroom)
|
||||
aja_add_subdirectory(crossplatform/ajadaemon "AJA Retail Daemon" "AJA Retail Daemon")
|
||||
aja_add_subdirectory(crossplatform/controlpanel "AJA ControlPanel" "AJA ControlPanel - Retail Device Configuration")
|
||||
aja_add_subdirectory(crossplatform/controlroom "AJA ControlRoom" "AJA Control Room - Ingest & Playout Application")
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Linux" AND AJA_BUILD_NONAJA)
|
||||
# ndibridge is currently Linux-only, and requires building libsamplerate
|
||||
add_subdirectory(crossplatform/ndibridge)
|
||||
aja_add_subdirectory(crossplatform/ndibridge "AJA NDI Bridge" "AJA NDI Bridge - Make It So")
|
||||
endif()
|
||||
|
||||
# oem/internal tools
|
||||
# NOTE(paulh): ajalogger is MIT licensed but need to remove dependency on ajagui/AJAAboutBox
|
||||
add_subdirectory(crossplatform/ajalogger)
|
||||
add_subdirectory(crossplatform/hdmiinstatus)
|
||||
add_subdirectory(crossplatform/konaburner)
|
||||
add_subdirectory(crossplatform/mcap)
|
||||
add_subdirectory(crossplatform/ntv2cmd)
|
||||
add_subdirectory(crossplatform/ntv2watcher)
|
||||
add_subdirectory(crossplatform/systemtest)
|
||||
aja_add_subdirectory(crossplatform/ajalogger "AJA Logger" "AJA Logger - Log All The Things")
|
||||
aja_add_subdirectory(crossplatform/hdmiinstatus)
|
||||
aja_add_subdirectory(crossplatform/konaburner)
|
||||
aja_add_subdirectory(crossplatform/mcap)
|
||||
aja_add_subdirectory(crossplatform/ntv2cmd)
|
||||
aja_add_subdirectory(crossplatform/ntv2watcher "AJA NTV2 Watcher" "AJA NTV2 Watcher")
|
||||
# aja_add_subdirectory(crossplatform/rovocontrol "AJA RovoControl" "AJA RovoControl")
|
||||
aja_add_subdirectory(crossplatform/systemtest "AJA System Test" "AJA System Test")
|
||||
|
||||
# aja cc demos
|
||||
add_subdirectory(crossplatform/demoapps/ntv2ccgrabber)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2ccplayer)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2ccgrabber)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2ccplayer)
|
||||
|
||||
# aja cuda demos (TODO)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2cudacapture)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2cudacapture)
|
||||
# aja hevc demos
|
||||
# NOTE: These demos use proprietary code and are not included in the open-source NTV2 distribution.
|
||||
add_subdirectory(crossplatform/demoapps/ntv2encodehevc)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2encodehevcfile)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2encodehevcvif)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2encodehevc)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2encodehevcfile)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2encodehevcvif)
|
||||
|
||||
# aja opengl demos (TODO)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2oglcapture)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2ogldpxreader)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2testOGL)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2ogloutput)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2oglcapture)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2ogldpxreader)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2testOGL)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2ogloutput)
|
||||
|
||||
# aja Qt-based demos (TODO)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2dpxplayer)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2konaipj2ksetup)
|
||||
add_subdirectory(crossplatform/demoapps/ntv2konaipjsonsetup)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2playcorder)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2recorddpx)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2stereocapture)
|
||||
# add_subdirectory(crossplatform/demoapps/ntv2playbackdpx)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2dpxplayer)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2konaipj2ksetup)
|
||||
aja_add_subdirectory(crossplatform/demoapps/ntv2konaipjsonsetup)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2playcorder)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2recorddpx)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2stereocapture)
|
||||
# aja_add_subdirectory(crossplatform/demoapps/ntv2playbackdpx)
|
||||
endif()
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
//
|
||||
// Copyright (C) 2012 AJA Video Systems, Inc.
|
||||
// Proprietary and Confidential information.
|
||||
// Copyright (C) 2012-2022 AJA Video Systems, Inc.
|
||||
//
|
||||
#include "ntv2gpucircularbuffer.h"
|
||||
#include "ajabase/common/circularbuffer.h"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
//
|
||||
// Copyright (C) 2012 AJA Video Systems, Inc.
|
||||
// Proprietary and Confidential information.
|
||||
// Copyright (C) 2012-2022 AJA Video Systems, Inc.
|
||||
//
|
||||
#ifndef NTV2GPUCIRCULARBUFFER_H
|
||||
#define NTV2GPUCIRCULARBUFFER_H
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
|
||||
#ifndef _OGLVIEW_
|
||||
#define _OGLVIEW_
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
/* SPDX-License-Identifier: MIT */
|
||||
|
||||
#ifndef _OPENGL_
|
||||
#define _OPENGL_
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
//
|
||||
// Copyright (C) 2012 AJA Video Systems, Inc.
|
||||
// Proprietary and Confidential information.
|
||||
// Copyright (C) 2012-2022 AJA Video Systems, Inc.
|
||||
//
|
||||
#include "ntv2gpucircularbuffer.h"
|
||||
#include "ajabase/common/circularbuffer.h"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
/* SPDX-License-Identifier: MIT */
|
||||
//
|
||||
// Copyright (C) 2012 AJA Video Systems, Inc.
|
||||
// Proprietary and Confidential information.
|
||||
// Copyright (C) 2012-2022 AJA Video Systems, Inc.
|
||||
//
|
||||
#ifndef NTV2GPUCIRCULARBUFFER_H
|
||||
#define NTV2GPUCIRCULARBUFFER_H
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
# NOTE: Ensure that the CUDA Toolkit v11.1 or later is installed and in your PATH.
|
||||
|
||||
if (NOT CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
message("skipping cudalowlatencydemo (requires Linux)")
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (requires Linux)")
|
||||
return()
|
||||
endif()
|
||||
|
||||
find_package(CUDA 11.1)
|
||||
if (NOT CUDA_FOUND)
|
||||
message("skipping cudalowlatencydemo (CUDA not found)")
|
||||
|
@ -12,17 +13,17 @@ endif()
|
|||
set(OpenGL_GL_PREFERENCE LEGACY)
|
||||
find_package(OpenGL)
|
||||
if (NOT OPENGL_FOUND)
|
||||
message("skipping cudalowlatencydemo (OpenGL not found)")
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (OpenGL not found)")
|
||||
return()
|
||||
endif()
|
||||
find_package(GLEW)
|
||||
if (NOT GLEW_FOUND)
|
||||
message("skipping cudalowlatencydemo (GLEW not found)")
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (GLEW not found)")
|
||||
return()
|
||||
endif()
|
||||
find_package(X11)
|
||||
if (NOT X11_FOUND)
|
||||
message("skipping cudalowlatencydemo (X11 not found)")
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (X11 not found)")
|
||||
return()
|
||||
endif()
|
||||
|
||||
|
@ -34,7 +35,6 @@ set(TARGET_COMPILE_DEFS
|
|||
-DAJA_RDMA=1)
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps/NVIDIA/common
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps/NVIDIA/commonCUDA
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -44,8 +44,6 @@ set(TARGET_INCLUDE_DIRS
|
|||
${OPENGL_INCLUDE_DIRS}
|
||||
${GLEW_INCLUDE_DIRS})
|
||||
|
||||
message("GLEW INCLUDE: ${GLEW_INCLUDE_DIRS}")
|
||||
|
||||
set(DEMO_APPS_SOURCES
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps/ntv2democommon.cpp)
|
||||
set(DEMO_APPS_HEADERS
|
||||
|
@ -56,24 +54,7 @@ set(CUDALOWLATENCYDEMO_BUILD_FILES
|
|||
kernel.cu)
|
||||
set(CUDALOWLATENCYDEMO_SOURCES
|
||||
cudaapp.cpp)
|
||||
set(NVIDIA_COMMON_SOURCES
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2errorlist.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2errorlist.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2glTextureTransfer.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2glTextureTransferNV.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2glTextureTransferNV.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2gpucircularbuffer.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2gpucircularbuffer.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2rendertotexture.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2rendertotexture.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2texture.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/ntv2texture.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/oglview.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/oglview.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/opengl.h
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/simplegpuvio.cpp
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../common/simplegpuvio.h
|
||||
)
|
||||
|
||||
set(NVIDIA_COMMONCUDA_SOURCES
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/assertion.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/cudaUtils.h
|
||||
|
@ -108,44 +89,36 @@ set(NVIDIA_COMMONCUDA_SOURCES
|
|||
|
||||
set(TARGET_SOURCES
|
||||
${CUDALOWLATENCYDEMO_SOURCES}
|
||||
${NVIDIA_COMMON_SOURCES}
|
||||
${NVIDIA_COMMONCUDA_SOURCES}
|
||||
${DEMO_APPS_HEADERS}
|
||||
${DEMO_APPS_SOURCES})
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
find_library(FOUNDATION_FRAMEWORK Foundation)
|
||||
set(TARGET_LINK_LIBS ${FOUNDATION_FRAMEWORK})
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(TARGET_LINK_LIBS X11 OpenGL::GL OpenGL::GLU GLEW::GLEW cuda cudart dl pthread rt)
|
||||
# cuda_include_directories(${TARGET_INCLUDE_DIRS})
|
||||
# cuda_compile(CUDA_OBJ kernel.cu)
|
||||
set(TARGET_LINK_LIBS X11 OpenGL::GL OpenGL::GLU GLEW::GLEW cuda dl pthread rt)
|
||||
add_executable(cudalowlatencydemo ${TARGET_SOURCES} kernel.cu)
|
||||
add_dependencies(cudalowlatencydemo ${CUDA_OBJ} ajantv2)
|
||||
target_compile_definitions(cudalowlatencydemo PUBLIC ${TARGET_COMPILE_DEFS})
|
||||
target_include_directories(cudalowlatencydemo PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(cudalowlatencydemo PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
# add_custom_command(
|
||||
# TARGET cudalowlatencydemo
|
||||
# PRE_BUILD
|
||||
# COMMAND ${CUDA_HOST_COMPILER} -c -I${AJA_APPS_ROOT}/crossplatform/demoapps/NVIDIA/common -I${AJA_APPS_ROOT}/crossplatform/demoapps/NVIDIA/commonCUDA -I${AJA_APPS_ROOT}/crossplatform/demoapps -I${AJA_LIBRARIES_ROOT} -I${AJA_LIB_NTV2_ROOT}/includes -I${CUDA_INCLUDE_DIRS} -I${OPENGL_INCLUDE_DIRS} -I${GLEW_INCLUDE_DIRS} -I${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA kernel.cu
|
||||
# DEPENDS kernel.cu
|
||||
# WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
# VERBATIM)
|
||||
target_compile_definitions(cudalowlatencydemo PRIVATE ${TARGET_COMPILE_DEFS})
|
||||
target_include_directories(cudalowlatencydemo PRIVATE ${TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(cudalowlatencydemo PRIVATE ajantv2 ${TARGET_LINK_LIBS})
|
||||
endif()
|
||||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${CUDALOWLATENCYDEMO_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/cudalowlatencydemo)
|
||||
install(FILES ${CUDALOWLATENCYDEMO_BUILD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/cudalowlatencydemo)
|
||||
install(FILES ${NVIDIA_COMMON_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/common)
|
||||
install(FILES ${NVIDIA_COMMONCUDA_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/commonCUDA)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/cudalowlatencydemo)
|
||||
endif()
|
||||
|
||||
install(TARGETS cudalowlatencydemo
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
||||
|
||||
message("added cudalowlatencydemo")
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(cudalowlatencydemo)
|
||||
endif()
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
#
|
||||
# Copyright (C) 2004-2021 AJA Video Systems, Inc.
|
||||
# Proprietary and Confidential information.
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Copyright (C) 2004-2022 AJA Video Systems, Inc.
|
||||
# All righs reserved
|
||||
#
|
||||
DIR := $(strip $(shell dirname $(abspath $(lastword $(MAKEFILE_LIST)))))
|
||||
|
|
|
@ -1,13 +1,37 @@
|
|||
project(dvplowlatencydemo)
|
||||
|
||||
if (NOT CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
message("skipping dvplowlatencydemo (requires Linux)")
|
||||
aja_message(STATUS "skipping dvplowlatencydemo (requires Linux)")
|
||||
return()
|
||||
endif()
|
||||
find_package(CUDA 11.2)
|
||||
if (NOT CUDA_FOUND)
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (CUDA not found)")
|
||||
return()
|
||||
endif()
|
||||
set(OpenGL_GL_PREFERENCE LEGACY)
|
||||
find_package(OpenGL)
|
||||
if (NOT OPENGL_FOUND)
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (OpenGL not found)")
|
||||
return()
|
||||
endif()
|
||||
find_package(GLEW)
|
||||
if (NOT GLEW_FOUND)
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (GLEW not found)")
|
||||
return()
|
||||
endif()
|
||||
find_package(X11)
|
||||
if (NOT X11_FOUND)
|
||||
aja_message(STATUS "skipping cudalowlatencydemo (X11 not found)")
|
||||
return()
|
||||
endif()
|
||||
|
||||
project(dvplowlatencydemo LANGUAGES CUDA CXX)
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps/NVIDIA/common
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_LIBRARIES_ROOT}/gpustuff/include
|
||||
${CUDA_INCLUDE_DIRS}
|
||||
${AJA_LIB_NTV2_ROOT}/includes)
|
||||
|
||||
set(DVPLOWLATENCYDEMO_BUILD_FILES
|
||||
|
@ -33,59 +57,36 @@ set(NVIDIA_COMMON_SOURCES
|
|||
${CMAKE_CURRENT_SOURCE_DIR}/../common/opengl.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../common/simplegpuvio.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../common/simplegpuvio.h)
|
||||
set(NVIDIA_COMMONCUDA_SOURCES
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/assertion.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/cudaUtils.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/gpuvio.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2cudaArrayTransfer.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2cudaArrayTransferNV.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2cudaArrayTransferNV.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2errorlist.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2errorlist.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2glTextureTransfer.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2glTextureTransferNV.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2glTextureTransferNV.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2gpucircularbuffer.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2gpucircularbuffer.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2gpuTextureTransfer.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2gpuTextureTransferNV.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2gpuTextureTransferNV.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2rendertotexture.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2rendertotexture.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2texture.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/ntv2texture.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/oglview.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/oglview.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/opengl.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simplecudavio.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simplecudavio.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simplegpuvio.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simplegpuvio.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simpleoglvio.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../commonCUDA/simpleoglvio.h)
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
find_library(FOUNDATION_FRAMEWORK Foundation)
|
||||
set(TARGET_LINK_LIBS ${FOUNDATION_FRAMEWORK})
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(TARGET_LINK_LIBS cuda cudart dl pthread rt)
|
||||
set(TARGET_LINK_LIBS X11 OpenGL::GL OpenGL::GLU GLEW::GLEW dvp dl pthread rt)
|
||||
set(TARGET_LINK_DIRS
|
||||
${TARGET_LINK_DIRS}
|
||||
${AJA_LIBRARIES_ROOT}/gpustuff/lib/linux/lib64)
|
||||
endif()
|
||||
|
||||
set(TARGET_SOURCES
|
||||
${DVPLOWLATENCYDEMO_SOURCES}
|
||||
${NVIDIA_COMMON_SOURCES}
|
||||
${NVIDIA_COMMONCUDA_SOURCES})
|
||||
${NVIDIA_COMMON_SOURCES})
|
||||
|
||||
# add_executable(dvplowlatencydemo ${TARGET_SOURCES})
|
||||
# add_dependencies(dvplowlatencydemo ajantv2)
|
||||
# target_include_directories(dvplowlatencydemo PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
# target_link_libraries(dvplowlatencydemo PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
add_executable(dvplowlatencydemo ${TARGET_SOURCES})
|
||||
add_dependencies(dvplowlatencydemo ajantv2)
|
||||
target_include_directories(dvplowlatencydemo PRIVATE ${TARGET_INCLUDE_DIRS})
|
||||
target_link_directories(dvplowlatencydemo PRIVATE ${TARGET_LINK_DIRS})
|
||||
target_link_libraries(dvplowlatencydemo PRIVATE ajantv2 ${TARGET_LINK_LIBS})
|
||||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${DVPLOWLATENCYDEMO_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/dvplowlatencydemo)
|
||||
install(FILES ${DVPLOWLATENCYDEMO_BUILD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/dvplowlatencydemo)
|
||||
install(FILES ${NVIDIA_COMMON_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/common)
|
||||
install(FILES ${NVIDIA_COMMONCUDA_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/NVIDIA/commonCUDA)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/dvplowlatencydemo)
|
||||
endif()
|
||||
|
||||
message("added dvplowlatencydemo")
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(dvplowlatencydemo)
|
||||
endif()
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# Copyright (C) 2004 - 2021 AJA Video Systems, Inc.
|
||||
# Copyright (C) 2004 - 2022 AJA Video Systems, Inc.
|
||||
#
|
||||
|
||||
DIR := $(strip $(shell dirname $(abspath $(lastword $(MAKEFILE_LIST)))))
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
project(ntv2burn)
|
||||
|
||||
message("added ntv2burn")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -45,10 +44,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2BURN_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn)
|
||||
install(FILES ${NTV2BURN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2burn
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2burn)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2burn4kquadrant)
|
||||
|
||||
message("added ntv2burn4kquadrant")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2BURN4KQUADRANT_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn4kquadrant)
|
||||
install(FILES ${NTV2BURN4KQUADRANT_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn4kquadrant)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2burn4kquadrant)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2burn4kquadrant
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2burn4kquadrant)
|
||||
endif()
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
project(ntv2capture)
|
||||
|
||||
message("added ntv2capture")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -45,10 +44,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2CAPTURE_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture)
|
||||
install(FILES ${NTV2CAPTURE_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2capture
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2capture)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2capture4k)
|
||||
|
||||
message("added ntv2capture4k")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2CAPTURE4K_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture4k)
|
||||
install(FILES ${NTV2CAPTURE4K_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture4k)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture4k)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2capture4k
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2capture4k)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2capture8k)
|
||||
|
||||
message("added ntv2capture8k")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2CAPTURE8K_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture8k)
|
||||
install(FILES ${NTV2CAPTURE8K_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture8k)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2capture8k)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2capture8k
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2capture8k)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2dolbyplayer)
|
||||
|
||||
message("added ntv2dolbyplayer")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2DOLBYPLAYER_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2dolbyplayer)
|
||||
install(FILES ${NTV2DOLBYPLAYER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2dolbyplayer)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2dolbyplayer)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2dolbyplayer
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2dolbyplayer)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2enumerateboards)
|
||||
|
||||
message("added ntv2enumerateboards")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2ENUMERATEBOARDS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2enumerateboards)
|
||||
install(FILES ${NTV2ENUMERATEBOARDS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2enumerateboards)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2enumerateboards)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2enumerateboards
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2enumerateboards)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2fieldburn)
|
||||
|
||||
message("added ntv2fieldburn")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2FIELDBURN_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2fieldburn)
|
||||
install(FILES ${NTV2FIELDBURN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2fieldburn)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2fieldburn)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2fieldburn
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2fieldburn)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2hdrsetup)
|
||||
|
||||
message("added ntv2hdrsetup")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -40,10 +38,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2HDRSETUP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2hdrsetup)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2hdrsetup)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2hdrsetup
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2hdrsetup)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2llburn)
|
||||
|
||||
message("added ntv2llburn")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2LLBURN_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2llburn)
|
||||
install(FILES ${NTV2LLBURN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2llburn)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2llburn)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2llburn
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2llburn)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2outputtestpattern)
|
||||
|
||||
message("added ntv2outputtestpattern")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2OUTPUTTESTPATTERN_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2outputtestpattern)
|
||||
install(FILES ${NTV2OUTPUTTESTPATTERN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2outputtestpattern)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2outputtestpattern)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2outputtestpattern
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2outputtestpattern)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2player)
|
||||
|
||||
message("added ntv2player")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2PLAYER_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player)
|
||||
install(FILES ${NTV2PLAYER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2player
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2player)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2player4k)
|
||||
|
||||
message("added ntv2player4k")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2PLAYER4K_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player4k)
|
||||
install(FILES ${NTV2PLAYER4K_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player4k)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player4k)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2player4k
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2player4k)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2player8k)
|
||||
|
||||
message("added ntv2player8k")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_APPS_ROOT}/crossplatform/demoapps
|
||||
|
@ -45,10 +43,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2PLAYER8K_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player8k)
|
||||
install(FILES ${NTV2PLAYER8K_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player8k)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2player8k)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2player8k
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2player8k)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2switchbitfile)
|
||||
|
||||
message("added ntv2switchbitfile")
|
||||
|
||||
set(NTV2SWITCHBITFILE_ROOT ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
|
@ -41,10 +39,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${NTV2SWITCHBITFILE_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2switchbitfile)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps/ntv2switchbitfile)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2switchbitfile
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2switchbitfile)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(logjammer)
|
||||
|
||||
message("added logjammer")
|
||||
|
||||
set(LOGJAMMER_TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -28,10 +26,16 @@ target_link_libraries(logjammer PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${LOGJAMMER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/logjammer)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/logjammer)
|
||||
endif()
|
||||
|
||||
install(TARGETS logjammer
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(logjammer)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(logreader)
|
||||
|
||||
message("added logreader")
|
||||
|
||||
set(LOGREADER_TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -30,8 +28,18 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${LOGREADER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/logreader)
|
||||
endif()
|
||||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${LOGREADER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/logreader)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/logreader)
|
||||
endif()
|
||||
|
||||
install(TARGETS logreader
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(logreader)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2firmwareinstaller)
|
||||
|
||||
message("added ntv2firmwareinstaller")
|
||||
|
||||
set(DEMO_APPS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../demoapps)
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
|
@ -48,10 +46,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${AJA_NTV2_UTILITY_PUBLIC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/utilityfiles/public)
|
||||
install(FILES ${NTV2FIRMWAREINSTALLER_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/ntv2firmwareinstaller)
|
||||
install(FILES ${NTV2FIRMWAREINSTALLER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/ntv2firmwareinstaller)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/ntv2firmwareinstaller)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2firmwareinstaller
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2firmwareinstaller)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ntv2thermo)
|
||||
|
||||
message("added ntv2thermo")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -28,10 +26,16 @@ target_link_libraries(ntv2thermo PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${NTV2THERMO_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/ntv2thermo)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/ntv2thermo)
|
||||
endif()
|
||||
|
||||
install(TARGETS ntv2thermo
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ntv2thermo)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(pciwhacker)
|
||||
|
||||
message("added pciwhacker")
|
||||
|
||||
set(DEMO_APPS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../demoapps)
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
|
@ -41,10 +39,16 @@ if (AJA_INSTALL_SOURCES)
|
|||
install(FILES ${DEMO_APPS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${DEMO_APPS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/demoapps)
|
||||
install(FILES ${PCIWHACKER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/pciwhacker)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/pciwhacker)
|
||||
endif()
|
||||
|
||||
install(TARGETS pciwhacker
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(pciwhacker)
|
||||
endif()
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
project(rdmawhacker)
|
||||
find_package(CUDA 11.2)
|
||||
if (NOT CUDA_FOUND)
|
||||
aja_message(STATUS "skipping rdmawhacker (CUDA not found)")
|
||||
return()
|
||||
endif()
|
||||
|
||||
message("added rdmawhacker")
|
||||
project(rdmawhacker LANGUAGES CUDA CXX)
|
||||
|
||||
set(DEMO_APPS_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/../demoapps)
|
||||
|
||||
|
@ -8,7 +12,8 @@ set(TARGET_INCLUDE_DIRS
|
|||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_LIB_NTV2_ROOT}/includes
|
||||
${DEMO_APPS_ROOT})
|
||||
${DEMO_APPS_ROOT}
|
||||
${CUDA_INCLUDE_DIRS})
|
||||
|
||||
set(DEMO_APPS_SOURCES
|
||||
${DEMO_APPS_ROOT}/ntv2democommon.cpp)
|
||||
|
@ -26,24 +31,31 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(TARGET_COMPILE_DEFS
|
||||
-DAJA_RDMA)
|
||||
set(TARGET_LINK_LIBS cuda cudart dl pthread rt)
|
||||
set(TARGET_LINK_LIBS cuda ${CUDA_LIBRARIES} dl pthread rt)
|
||||
endif()
|
||||
|
||||
set(TARGET_SOURCES
|
||||
${RDMAWHACKER_SOURCES})
|
||||
|
||||
# add_executable(rdmawhacker ${TARGET_SOURCES})
|
||||
# add_dependencies(rdmawhacker ajantv2)
|
||||
# target_compile_definitions(rdmawhacker ${TARGET_COMPILE_DEFS})
|
||||
# target_include_directories(rdmawhacker PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
# target_link_libraries(rdmawhacker PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
aja_message(STATUS "CUDA Libs: ${CUDA_LIBRARIES}")
|
||||
add_executable(rdmawhacker ${TARGET_SOURCES})
|
||||
add_dependencies(rdmawhacker ajantv2)
|
||||
target_compile_definitions(rdmawhacker PUBLIC ${TARGET_COMPILE_DEFS})
|
||||
target_include_directories(rdmawhacker PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(rdmawhacker PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${RDMAWHACKER_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/rdmawhacker)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/rdmawhacker)
|
||||
endif()
|
||||
|
||||
# install(TARGETS rdmawhacker
|
||||
# ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
# LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
# RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
# FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
install(TARGETS rdmawhacker
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(pciwhacker)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(regio)
|
||||
|
||||
message("added regio")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -34,10 +32,16 @@ target_link_libraries(regio PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${REGIO_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/regio)
|
||||
install(FILES ${REGIO_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/regio)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/regio)
|
||||
endif()
|
||||
|
||||
install(TARGETS regio
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(regio)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(supportlog)
|
||||
|
||||
message("added supportlog")
|
||||
|
||||
set(SUPPORTLOG_TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -30,10 +28,16 @@ target_link_libraries(supportlog PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${SUPPORTLOG_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/supportlog)
|
||||
install(FILES ${SUPPORTLOG_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/supportlog)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/supportlog)
|
||||
endif()
|
||||
|
||||
install(TARGETS supportlog
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(supportlog)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(testaux)
|
||||
|
||||
message("added testaux")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -29,10 +27,16 @@ target_link_libraries(testaux PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${TESTAUX_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testaux)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testaux)
|
||||
endif()
|
||||
|
||||
install(TARGETS testaux
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(testaux)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(testcrc)
|
||||
|
||||
message("added testcrc")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -29,10 +27,16 @@ target_link_libraries(testcrc PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${TESTCRC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testcrc)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testcrc)
|
||||
endif()
|
||||
|
||||
install(TARGETS testcrc
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(testcrc)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(testframe)
|
||||
|
||||
message("added testframe")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -29,10 +27,16 @@ target_link_libraries(testframe PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${TESTFRAME_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testframe)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testframe)
|
||||
endif()
|
||||
|
||||
install(TARGETS testframe
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(testframe)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(testp2p)
|
||||
|
||||
message("added testp2p")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -29,10 +27,16 @@ target_link_libraries(testp2p PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${TESTP2P_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testp2p)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testp2p)
|
||||
endif()
|
||||
|
||||
install(TARGETS testp2p
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(testp2p)
|
||||
endif()
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
project(testrdma)
|
||||
find_package(CUDA 11.2)
|
||||
if (NOT CUDA_FOUND)
|
||||
aja_message(STATUS "skipping testrdma (CUDA not found)")
|
||||
return()
|
||||
endif()
|
||||
|
||||
message("added testrdma")
|
||||
project(testrdma LANGUAGES CUDA CXX)
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_LIB_NTV2_ROOT}/includes)
|
||||
${AJA_LIB_NTV2_ROOT}/includes
|
||||
${CUDA_INCLUDE_DIRS})
|
||||
|
||||
set(TESTRDMA_SOURCES
|
||||
testrdma.cpp)
|
||||
|
@ -16,23 +21,32 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|||
find_library(FOUNDATION_FRAMEWORK Foundation)
|
||||
set(TARGET_LINK_LIBS ${FOUNDATION_FRAMEWORK})
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(TARGET_LINK_LIBS cuda cudart dl pthread rt)
|
||||
set(TARGET_COMPILE_DEFS
|
||||
-DAJA_RDMA)
|
||||
set(TARGET_LINK_LIBS cuda ${CUDA_LIBRARIES} dl pthread rt)
|
||||
endif()
|
||||
|
||||
set(TARGET_SOURCES
|
||||
${TESTRDMA_SOURCES})
|
||||
|
||||
# add_executable(testrdma ${TARGET_SOURCES})
|
||||
# add_dependencies(testrdma ajantv2)
|
||||
# target_include_directories(testrdma PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
# target_link_libraries(testrdma PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
add_executable(testrdma ${TARGET_SOURCES})
|
||||
add_dependencies(testrdma ajantv2)
|
||||
target_compile_definitions(testrdma PUBLIC ${TARGET_COMPILE_DEFS})
|
||||
target_include_directories(testrdma PUBLIC ${TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(testrdma PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
||||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${TESTRDMA_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testrdma)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/testrdma)
|
||||
endif()
|
||||
|
||||
# install(TARGETS testrdma
|
||||
# ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
# LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
# RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
# FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
install(TARGETS testrdma
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if(AJA_CODE_SIGN)
|
||||
aja_code_sign(testrdma)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(vpidtool)
|
||||
|
||||
message("added vpidtool")
|
||||
|
||||
set(TARGET_INCLUDE_DIRS
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/../
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
|
@ -28,10 +26,16 @@ target_link_libraries(vpidtool PUBLIC ajantv2 ${TARGET_LINK_LIBS})
|
|||
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${VPIDTOOL_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/vpidtool)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajaapps/crossplatform/vpidtool)
|
||||
endif()
|
||||
|
||||
install(TARGETS vpidtool
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(vpidtool)
|
||||
endif()
|
||||
|
|
|
@ -129,9 +129,9 @@ set(AJADRIVER_TARGET_SOURCES
|
|||
${AJADRIVER_COMMON_SOURCES})
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
message("Windows driver CMake build not yet implemented!")
|
||||
aja_message(STATUS "Windows driver CMake build not yet implemented!")
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
message("macOS driver CMake build not yet implemented!")
|
||||
aja_message(STATUS "macOS driver CMake build not yet implemented!")
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(AJADRIVER_TARGET_SOURCES
|
||||
${AJADRIVER_TARGET_SOURCES}
|
||||
|
@ -140,7 +140,6 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|||
endif()
|
||||
|
||||
add_custom_target(ajadriver_install ${AJADRIVER_TARGET_SOURCES})
|
||||
add_dependencies(ajadriver_install install)
|
||||
|
||||
# Windows
|
||||
if (AJA_BUILD_OPENSOURCE AND AJA_INSTALL_SOURCES)
|
||||
|
@ -152,27 +151,25 @@ if (AJA_BUILD_OPENSOURCE AND AJA_INSTALL_SOURCES)
|
|||
endif()
|
||||
# Linux
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJADRIVER_LINUX_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver/linux)
|
||||
install(FILES ${AJADRIVER_LINUX_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajadriver/linux)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJADRIVER_LINUX_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver/linux)
|
||||
install(FILES ${AJADRIVER_LINUX_BUILD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver/linux)
|
||||
install(FILES ${AJADRIVER_LINUX_LOAD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/bin)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/common.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/configure.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/internal.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/qt.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJADRIVER_LINUX_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver/linux)
|
||||
install(FILES ${AJADRIVER_LINUX_BUILD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver/linux)
|
||||
install(FILES ${AJADRIVER_LINUX_LOAD_FILES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/bin)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/common.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/configure.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/internal.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/qt.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/sdkversion.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/targets.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/targets.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
endif()
|
||||
# common
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJADRIVER_COMMON_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver)
|
||||
install(FILES ${AJA_LIB_NTV2_ROOT}/includes/ntv2driverprocamp.h DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/includes)
|
||||
install(FILES ${AJADRIVER_COMMON_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajadriver)
|
||||
install(FILES ${AJA_LIB_NTV2_ROOT}/includes/ntv2driverprocamp.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/includes)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJADRIVER_COMMON_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajadriver)
|
||||
install(FILES ${AJA_LIB_NTV2_ROOT}/src/ntv2driverprocamp.cpp DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src)
|
||||
endif()
|
||||
|
||||
message ("added ajadriver")
|
||||
|
|
|
@ -37,9 +37,17 @@ endif
|
|||
ifdef AJA_IGPU
|
||||
EXTRA_CFLAGS += -DAJA_IGPU=$(AJA_IGPU)
|
||||
else
|
||||
ifeq ($(NVIDIA_SYMVERS),)
|
||||
NVIDIA_KO ?= $(shell find /lib/modules/$(KVERSION)/ -name 'nvidia*.ko'|grep -P 'nvidia(_[0-9]+)?.ko'|head -1)
|
||||
NVIDIA_GEN_SYMVERS := ./nvidia-ko-to-module-symvers $(NVIDIA_KO) $(DIR)/nvidia.symvers
|
||||
NVIDIA_SYMVERS := $(DIR)/nvidia.symvers
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef AJA_CREATE_DEVICE_NODES
|
||||
EXTRA_CFLAGS += -DAJA_CREATE_DEVICE_NODES=$(AJA_CREATE_DEVICE_NODES)
|
||||
endif
|
||||
|
||||
DRIVERSRCS = ntv2devicefeatures.c \
|
||||
ntv2driver.c \
|
||||
|
@ -152,8 +160,8 @@ ifdef AJA_RDMA
|
|||
ifdef AJA_IGPU
|
||||
$(MAKE) -C $(KDIR) M=$(A_LINUX_DRIVER_PATH) DRIVERDIR=$(A_LINUX_DRIVER_PATH) modules
|
||||
else
|
||||
./nvidia-ko-to-module-symvers $(NVIDIA_KO) nvidia.symvers
|
||||
$(MAKE) -C $(KDIR) M=$(A_LINUX_DRIVER_PATH) DRIVERDIR=$(A_LINUX_DRIVER_PATH) modules KBUILD_EXTRA_SYMBOLS=$(DIR)/nvidia.symvers
|
||||
${NVIDIA_GEN_SYMVERS}
|
||||
$(MAKE) -C $(KDIR) M=$(A_LINUX_DRIVER_PATH) DRIVERDIR=$(A_LINUX_DRIVER_PATH) modules KBUILD_EXTRA_SYMBOLS=$(NVIDIA_SYMVERS)
|
||||
endif
|
||||
else
|
||||
$(MAKE) -C $(KDIR) M=$(A_LINUX_DRIVER_PATH) DRIVERDIR=$(A_LINUX_DRIVER_PATH) modules
|
||||
|
@ -162,6 +170,9 @@ endif
|
|||
if [ -d "$(A_LIBRARIES_PATH)/bin" ]; then cp -f $(A_LIBRARIES_PATH)/bin/*load_ajantv2 $(A_UBER_BIN); fi
|
||||
cp $(NTV2TARGET).ko $(A_UBER_BIN)
|
||||
|
||||
modules_install:
|
||||
$(MAKE) -C $(KDIR) M=$(A_LINUX_DRIVER_PATH) modules_install
|
||||
|
||||
all: $(DRIVERINCS) $(DRIVERSRCS) $(HEVCINCS) $(HEVCSRCS) $(RDMAINCS)
|
||||
|
||||
# Make a symlink to the C-only CPP files we need in classes.
|
||||
|
|
|
@ -2834,25 +2834,28 @@ static int reboot_handler(struct notifier_block *this, unsigned long code, void
|
|||
|
||||
static UWord deviceNumber;
|
||||
|
||||
static int aja_ntv2_dev_uevent(struct device *dev, struct kobj_uevent_env *env)
|
||||
{
|
||||
add_uevent_var(env, "DEVMODE=%#o", 0666);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int __init aja_ntv2_module_init(void)
|
||||
{
|
||||
int res;
|
||||
int i;
|
||||
char versionString[STRMAX];
|
||||
struct class *ntv2_class = NULL;
|
||||
|
||||
for (i = 0; i < NTV2_MAXBOARDS; i++)
|
||||
{
|
||||
NTV2Params[i] = NULL;
|
||||
}
|
||||
|
||||
if (getNTV2ModuleParams()->name == NULL)
|
||||
{
|
||||
getNTV2ModuleParams()->name = "ntv2mod";
|
||||
}
|
||||
if (getNTV2ModuleParams()->driverName == NULL)
|
||||
{
|
||||
getNTV2ModuleParams()->driverName = "ajantv2";
|
||||
}
|
||||
memset(getNTV2ModuleParams(), 0, sizeof(*getNTV2ModuleParams()));
|
||||
|
||||
getNTV2ModuleParams()->name = "ntv2mod";
|
||||
getNTV2ModuleParams()->driverName = "ajantv2";
|
||||
|
||||
#if defined(AJA_HEVC)
|
||||
hevc_module_init("hevc");
|
||||
|
@ -2880,21 +2883,23 @@ static int __init aja_ntv2_module_init(void)
|
|||
if (res < 0) {
|
||||
MSG("%s: *error* uart_register_driver failed code %d\n",
|
||||
getNTV2ModuleParams()->name, res);
|
||||
return res;
|
||||
goto fail;
|
||||
}
|
||||
getNTV2ModuleParams()->uart_driver = &ntv2_uart_driver;
|
||||
getNTV2ModuleParams()->uart_max = NTV2_MAXBOARDS;
|
||||
atomic_set(&getNTV2ModuleParams()->uart_index, 0);
|
||||
|
||||
// Do the PCI initialization here. If we do it
|
||||
// later and it fails we have to unregister_chrdev() etc.
|
||||
// Note: this calls the probe function.
|
||||
res = NTV2_LINUX_PCI_REG_DRIVER_FUNC(&ntv2_driver);
|
||||
if (res != 0) {
|
||||
MSG("%s: NTV2_LINUX_PCI_REG_DRIVER_FUNC failed with code %d",
|
||||
// Create device class
|
||||
ntv2_class = class_create(THIS_MODULE, getNTV2ModuleParams()->driverName);
|
||||
if (IS_ERR(ntv2_class))
|
||||
{
|
||||
res = PTR_ERR(ntv2_class);
|
||||
MSG("%s: Failed to create device class; code %d\n",
|
||||
getNTV2ModuleParams()->name, res);
|
||||
return res;
|
||||
goto fail;
|
||||
}
|
||||
ntv2_class->dev_uevent = aja_ntv2_dev_uevent;
|
||||
getNTV2ModuleParams()->class = ntv2_class;
|
||||
|
||||
// register device with kernel
|
||||
MSG("%s: register chrdev %s\n",
|
||||
|
@ -2906,11 +2911,20 @@ static int __init aja_ntv2_module_init(void)
|
|||
{
|
||||
MSG("%s: Can't register device with kernel\n",
|
||||
getNTV2ModuleParams()->name);
|
||||
return res;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
getNTV2ModuleParams()->NTV2Major = res;
|
||||
|
||||
// Register the PCI driver.
|
||||
// Note: this calls the probe function.
|
||||
res = NTV2_LINUX_PCI_REG_DRIVER_FUNC(&ntv2_driver);
|
||||
if (res != 0) {
|
||||
MSG("%s: NTV2_LINUX_PCI_REG_DRIVER_FUNC failed with code %d",
|
||||
getNTV2ModuleParams()->name, res);
|
||||
goto fail;
|
||||
}
|
||||
|
||||
// Set all autocirculators to disabled
|
||||
for (i = 0; i < getNTV2ModuleParams()->numNTV2Devices; i++)
|
||||
AutoCirculateInitialize(i);
|
||||
|
@ -2941,6 +2955,25 @@ static int __init aja_ntv2_module_init(void)
|
|||
MSG("%s: module init end\n", getNTV2ModuleParams()->name);
|
||||
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
if (getNTV2ModuleParams()->NTV2Major)
|
||||
{
|
||||
unregister_chrdev(getNTV2ModuleParams()->NTV2Major,
|
||||
getNTV2ModuleParams()->driverName);
|
||||
}
|
||||
|
||||
if (getNTV2ModuleParams()->class)
|
||||
{
|
||||
class_destroy(getNTV2ModuleParams()->class);
|
||||
}
|
||||
|
||||
if (getNTV2ModuleParams()->uart_driver)
|
||||
{
|
||||
uart_unregister_driver(getNTV2ModuleParams()->uart_driver);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static int __init probe(struct pci_dev *pdev, const struct pci_device_id *id) /* New device inserted */
|
||||
|
@ -2955,6 +2988,10 @@ static int __init probe(struct pci_dev *pdev, const struct pci_device_id *id) /*
|
|||
Ntv2Status status;
|
||||
bool isKonaIP = false;
|
||||
bool linuxSerial = false;
|
||||
#if defined(AJA_CREATE_DEVICE_NODES)
|
||||
dev_t dev;
|
||||
struct device *device = NULL;
|
||||
#endif
|
||||
|
||||
#if defined(AJA_HEVC)
|
||||
if (id->vendor == HEVC_VENDOR_ID)
|
||||
|
@ -3394,6 +3431,28 @@ static int __init probe(struct pci_dev *pdev, const struct pci_device_id *id) /*
|
|||
// Enable DMA
|
||||
dmaEnable(deviceNumber);
|
||||
|
||||
#if defined(AJA_CREATE_DEVICE_NODES)
|
||||
// Create the device node
|
||||
dev = MKDEV(getNTV2ModuleParams()->NTV2Major, deviceNumber);
|
||||
cdev_init(&NTV2Params[deviceNumber]->cdev, &ntv2_fops);
|
||||
res = cdev_add(&NTV2Params[deviceNumber]->cdev, dev, 1);
|
||||
if (res < 0)
|
||||
{
|
||||
MSG("%s: Failed to add cdev to subsystem\n", getNTV2ModuleParams()->name);
|
||||
return res;
|
||||
}
|
||||
|
||||
device = device_create(getNTV2ModuleParams()->class, NULL, dev,
|
||||
NULL, "ajantv2%d", deviceNumber);
|
||||
if (IS_ERR(device))
|
||||
{
|
||||
MSG("%s: Failed to create device node\n", getNTV2ModuleParams()->name);
|
||||
return PTR_ERR(device);
|
||||
}
|
||||
MSG("%s: Created device node /dev/ajantv2%d\n",
|
||||
getNTV2ModuleParams()->name, deviceNumber);
|
||||
#endif
|
||||
|
||||
deviceNumber++;
|
||||
|
||||
MSG("%s: probe end\n", ntv2pp->name);
|
||||
|
@ -3503,6 +3562,19 @@ static void __exit aja_ntv2_module_cleanup(void)
|
|||
pci_resources_release(ntv2pp);
|
||||
} // end of for i loop
|
||||
|
||||
#if defined(AJA_CREATE_DEVICE_NODES)
|
||||
// Destroy the device nodes
|
||||
for (i = 0; i < NTV2_MAXBOARDS; i++)
|
||||
{
|
||||
if (NTV2Params[i] != NULL)
|
||||
{
|
||||
dev_t dev = MKDEV(getNTV2ModuleParams()->NTV2Major, i);
|
||||
device_destroy(getNTV2ModuleParams()->class, dev);
|
||||
cdev_del(&NTV2Params[i]->cdev);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
unregister_chrdev( getNTV2ModuleParams()->NTV2Major, getNTV2ModuleParams()->driverName);
|
||||
remove_proc_entry("driver/aja", NULL /* parent dir */);
|
||||
|
||||
|
@ -3517,6 +3589,8 @@ static void __exit aja_ntv2_module_cleanup(void)
|
|||
|
||||
pci_unregister_driver(&ntv2_driver);
|
||||
|
||||
class_destroy(getNTV2ModuleParams()->class);
|
||||
|
||||
uart_unregister_driver(&ntv2_uart_driver);
|
||||
|
||||
// clean up any VirtualData nodes that were allocated
|
||||
|
|
|
@ -97,6 +97,7 @@ typedef struct ntv2_module_private
|
|||
char * name;
|
||||
char * driverName;
|
||||
ULWord intrBitLut[eNumInterruptTypes];
|
||||
struct class *class;
|
||||
|
||||
// uart driver
|
||||
struct uart_driver *uart_driver;
|
||||
|
@ -240,6 +241,7 @@ typedef struct ntv2_private
|
|||
ULWord busNumber;
|
||||
ULWord pci_device;
|
||||
char name[16];
|
||||
struct cdev cdev;
|
||||
|
||||
// Base Address Values
|
||||
unsigned long _unmappedBAR0Address;
|
||||
|
|
|
@ -1,19 +1,19 @@
|
|||
# ajaconv
|
||||
if (EXISTS ${AJA_LIB_CONV_ROOT})
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
add_subdirectory(ajaconv)
|
||||
aja_add_subdirectory(ajaconv)
|
||||
if (AJA_BUILD_TESTS)
|
||||
add_subdirectory(ajaconv/test)
|
||||
aja_add_subdirectory(ajaconv/test)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# ajantv2
|
||||
if (EXISTS ${AJA_LIB_NTV2_ROOT})
|
||||
add_subdirectory(ajantv2)
|
||||
aja_add_subdirectory(ajantv2)
|
||||
if (AJA_BUILD_TESTS)
|
||||
add_subdirectory(ajabase/test)
|
||||
add_subdirectory(ajantv2/test)
|
||||
aja_add_subdirectory(ajabase/test)
|
||||
aja_add_subdirectory(ajantv2/test)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
@ -21,9 +21,9 @@ endif()
|
|||
if (EXISTS ${AJA_LIB_CC_ROOT}
|
||||
AND EXISTS ${AJA_LIB_NTV2_ROOT})
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
add_subdirectory(ajacc)
|
||||
aja_add_subdirectory(ajacc)
|
||||
if (AJA_BUILD_TESTS)
|
||||
add_subdirectory(ajacc/test)
|
||||
aja_add_subdirectory(ajacc/test)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@ -32,7 +32,7 @@ endif()
|
|||
if (EXISTS ${AJA_LIB_GUI_ROOT}
|
||||
AND EXISTS ${AJA_LIB_NTV2_ROOT})
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
add_subdirectory(ajainternal/gui)
|
||||
aja_add_subdirectory(ajainternal/gui)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
@ -42,10 +42,16 @@ if (EXISTS ${AJA_LIB_STREAMS_ROOT}
|
|||
AND EXISTS ${AJA_LIB_CONV_ROOT})
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
# Drastic deck control lib (AKA vvwexts2)
|
||||
add_subdirectory(streams/drasticproj)
|
||||
add_subdirectory(streams)
|
||||
aja_add_subdirectory(streams/drasticproj "Drastic Technologies Ltd.")
|
||||
aja_add_subdirectory(streams)
|
||||
if (AJA_BUILD_TESTS)
|
||||
add_subdirectory(streams/test)
|
||||
aja_add_subdirectory(streams/test)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (EXISTS ${AJA_LIB_DOCS_ROOT}
|
||||
AND EXISTS ${AJA_LIB_NTV2_ROOT}
|
||||
AND AJA_BUILD_DOCS)
|
||||
aja_add_subdirectory(docs)
|
||||
endif()
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
project(ajaanc)
|
||||
|
||||
message("added ajaanc")
|
||||
|
||||
set(AJAANC_TARGET_INCLUDE_DIRS
|
||||
${AJA_LIBRARIES_ROOT}
|
||||
${AJA_LIB_ANC_ROOT}/includes
|
||||
|
|
|
@ -1,8 +1,5 @@
|
|||
project(ajantv2)
|
||||
|
||||
include(GNUInstallDirs)
|
||||
message ("added ajantv2")
|
||||
|
||||
if(CMAKE_CXX_STANDARD LESS 11)
|
||||
remove_definitions(
|
||||
-DAJA_USE_CPLUSPLUS11
|
||||
|
@ -134,11 +131,60 @@ set(AJANTV2_SOURCES
|
|||
src/ntv2verticalfilter.cpp
|
||||
src/ntv2vpid.cpp
|
||||
src/ntv2vpidfromspec.cpp)
|
||||
# ntv2driverinterface/publicinterface
|
||||
set(AJANTV2_WIN_HEADERS
|
||||
src/win/ntv2windriverinterface.h
|
||||
src/win/ntv2winpublicinterface.h)
|
||||
set(AJANTV2_WIN_SOURCES
|
||||
# src/win/dllmain.cpp
|
||||
src/win/ntv2windriverinterface.cpp)
|
||||
set(AJANTV2_MAC_HEADERS
|
||||
src/mac/ntv2macdriverinterface.h
|
||||
src/mac/ntv2macpublicinterface.h)
|
||||
set(AJANTV2_MAC_SOURCES
|
||||
src/mac/ntv2macdriverinterface.cpp)
|
||||
set(AJANTV2_LIN_HEADERS
|
||||
src/lin/ntv2linuxdriverinterface.h
|
||||
src/lin/ntv2linuxpublicinterface.h)
|
||||
set(AJANTV2_LIN_SOURCES
|
||||
src/lin/ntv2linuxdriverinterface.cpp)
|
||||
# ajantv2 utilityfiles
|
||||
set(AJANTV2_UTILITY_PUBLIC_HEADERS
|
||||
utilityfiles/public/ntv2firmwareinstallerthread.h
|
||||
utilityfiles/public/ntv2hevcfirmwareinstallerthread.h)
|
||||
set(AJANTV2_UTILITY_PUBLIC_SOURCES
|
||||
utilityfiles/public/ntv2firmwareinstallerthread.cpp
|
||||
utilityfiles/public/ntv2hevcfirmwareinstallerthread.cpp)
|
||||
# ajantv2 hevc
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
aja_message(STATUS "added ajantv2 HEVC/M31 codec")
|
||||
set(AJANTV2_HEVC_HEADERS
|
||||
codecs/hevc/m31/ntv2m31.h
|
||||
codecs/hevc/m31/ntv2m31cparam.h
|
||||
codecs/hevc/m31/ntv2m31ehparam.h
|
||||
codecs/hevc/m31/ntv2m31vaparam.h
|
||||
codecs/hevc/m31/ntv2m31vinparam.h
|
||||
codecs/hevc/m31/ntv2m31viparam.h)
|
||||
set(AJANTV2_HEVC_SOURCES
|
||||
codecs/hevc/m31/ntv2m31.cpp
|
||||
codecs/hevc/m31/ntv2m31cparam.cpp
|
||||
codecs/hevc/m31/ntv2m31ehparam.cpp
|
||||
codecs/hevc/m31/ntv2m31vaparam.cpp
|
||||
codecs/hevc/m31/ntv2m31vinparam.cpp
|
||||
codecs/hevc/m31/ntv2m31viparam.cpp)
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJANTV2_HEVC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/codecs/hevc/m31)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJANTV2_HEVC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/codecs/hevc/m31)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (AJA_BUILDING_CMAKE)
|
||||
add_definitions(-DAJA_BUILDING_CMAKE)
|
||||
configure_file(includes/version.h.in includes/version.h @ONLY)
|
||||
install(FILES ${CMAKE_BINARY_DIR}/ajalibraries/ajantv2/includes/version.h DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/includes)
|
||||
install(FILES ${CMAKE_BINARY_DIR}/ajalibraries/ajantv2/includes/version.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/includes)
|
||||
endif()
|
||||
|
||||
# ajaanc
|
||||
|
@ -175,31 +221,6 @@ set(AJAANC_SOURCES
|
|||
${AJA_LIB_ANC_ROOT}/src/ancillarydata_timecode_vitc.cpp
|
||||
${AJA_LIB_ANC_ROOT}/src/ancillarylist.cpp)
|
||||
|
||||
if (NOT AJA_BUILD_OPENSOURCE)
|
||||
message("added ajantv2 HEVC/M31 codec")
|
||||
set(AJANTV2_HEVC_HEADERS
|
||||
codecs/hevc/m31/ntv2m31.h
|
||||
codecs/hevc/m31/ntv2m31cparam.h
|
||||
codecs/hevc/m31/ntv2m31ehparam.h
|
||||
codecs/hevc/m31/ntv2m31vaparam.h
|
||||
codecs/hevc/m31/ntv2m31vinparam.h
|
||||
codecs/hevc/m31/ntv2m31viparam.h)
|
||||
set(AJANTV2_HEVC_SOURCES
|
||||
codecs/hevc/m31/ntv2m31.cpp
|
||||
codecs/hevc/m31/ntv2m31cparam.cpp
|
||||
codecs/hevc/m31/ntv2m31ehparam.cpp
|
||||
codecs/hevc/m31/ntv2m31vaparam.cpp
|
||||
codecs/hevc/m31/ntv2m31vinparam.cpp
|
||||
codecs/hevc/m31/ntv2m31viparam.cpp)
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJANTV2_HEVC_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/codecs/hevc/m31)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJANTV2_HEVC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/codecs/hevc/m31)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# ajabase
|
||||
set(AJABASE_COMMON_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/common/ajarefptr.h
|
||||
|
@ -236,7 +257,7 @@ set(AJABASE_PERSISTENCE_HEADERS
|
|||
${AJA_LIB_BASE_ROOT}/persistence/sqlite3.h)
|
||||
set(AJABASE_PNP_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/pnp.h)
|
||||
set(AJABASE_SYSTEM_HEADERS
|
||||
set(AJABASE_SYS_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/atomic.h
|
||||
${AJA_LIB_BASE_ROOT}/system/debug.h
|
||||
${AJA_LIB_BASE_ROOT}/system/debugshare.h
|
||||
|
@ -278,7 +299,7 @@ set(AJABASE_PERSISTENCE_SOURCES
|
|||
${AJA_LIB_BASE_ROOT}/persistence/sqlite3.c)
|
||||
set(AJABASE_PNP_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/pnp.cpp)
|
||||
set(AJABASE_SYSTEM_SOURCES
|
||||
set(AJABASE_SYS_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/atomic.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/debug.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/diskstatus.cpp
|
||||
|
@ -292,33 +313,89 @@ set(AJABASE_SYSTEM_SOURCES
|
|||
${AJA_LIB_BASE_ROOT}/system/system.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/systemtime.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/thread.cpp)
|
||||
|
||||
# ajabase windows
|
||||
set(AJABASE_PNP_WIN_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/windows/pnpimpl.h)
|
||||
set(AJABASE_PNP_WIN_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/windows/pnpimpl.cpp)
|
||||
set(AJABASE_SYS_WIN_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/threadimpl.h)
|
||||
set(AJABASE_SYS_WIN_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/infoimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/threadimpl.cpp)
|
||||
# ajabase linux
|
||||
set(AJABASE_PNP_LIN_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/linux/pnpimpl.h)
|
||||
set(AJABASE_PNP_LIN_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/linux/pnpimpl.cpp)
|
||||
set(AJABASE_SYS_LIN_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/threadimpl.h)
|
||||
set(AJABASE_SYS_LIN_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/infoimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/threadimpl.cpp)
|
||||
# ajabase mac
|
||||
set(AJABASE_PNP_MAC_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/devicenotifier.h
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/masterport.h
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/pnpimpl.h)
|
||||
set(AJABASE_PNP_MAC_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/devicenotifier.cpp
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/masterport.cpp
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/pnpimpl.cpp)
|
||||
set(AJABASE_SYS_MAC_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/pthreadsextra.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/threadimpl.h)
|
||||
set(AJABASE_SYS_MAC_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/infoimpl.mm
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/pthreadsextra.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/threadimpl.cpp)
|
||||
set(AJABASE_HEADERS
|
||||
${AJABASE_COMMON_HEADERS}
|
||||
${AJABASE_NETWORK_HEADERS}
|
||||
${AJABASE_PERSISTENCE_HEADERS}
|
||||
${AJABASE_PNP_HEADERS}
|
||||
${AJABASE_SYSTEM_HEADERS})
|
||||
${AJABASE_SYS_HEADERS})
|
||||
set(AJABASE_SOURCES
|
||||
${AJABASE_COMMON_SOURCES}
|
||||
${AJABASE_NETWORK_SOURCES}
|
||||
${AJABASE_PERSISTENCE_SOURCES}
|
||||
${AJABASE_PNP_SOURCES}
|
||||
${AJABASE_SYSTEM_SOURCES})
|
||||
${AJABASE_SYS_SOURCES})
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
add_definitions(
|
||||
remove_definitions(-DUNICODE -D_UNICODE)
|
||||
|
||||
set(TARGET_COMPILE_DEFS
|
||||
-D_MBCS
|
||||
-DCRT_NONSTDC_DEPRECATE
|
||||
-D_WINSOCK_DEPRECATED_NO_WARNINGS
|
||||
-DAJA_NO_AUTOIMPORT)
|
||||
|
||||
remove_definitions(-DUNICODE -D_UNICODE)
|
||||
|
||||
set(EXTRA_STATIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_STATIC
|
||||
${TARGET_COMPILE_DEFS}
|
||||
-DAJASTATIC)
|
||||
|
||||
set(EXTRA_DYNAMIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_DYNAMIC
|
||||
${TARGET_COMPILE_DEFS}
|
||||
-DAJADLL
|
||||
-DAJA_WINDLL
|
||||
-DAJADLL_BUILD)
|
||||
|
@ -328,61 +405,29 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
|||
${AJA_LIB_BASE_ROOT}/pnp/windows
|
||||
${AJA_LIB_BASE_ROOT}/system/windows)
|
||||
|
||||
set(AJANTV2_OS_HEADERS
|
||||
src/win/ntv2windriverinterface.h
|
||||
src/win/ntv2winpublicinterface.h)
|
||||
set(AJANTV2_OS_SOURCES
|
||||
# src/win/dllmain.cpp
|
||||
src/win/ntv2windriverinterface.cpp)
|
||||
|
||||
set(AJABASE_OS_SYSTEM_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/threadimpl.h)
|
||||
set(AJABASE_OS_SYSTEM_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/infoimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/windows/threadimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_PNP_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/windows/pnpimpl.h)
|
||||
set(AJABASE_OS_PNP_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/windows/pnpimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_HEADERS
|
||||
${AJABASE_OS_SYSTEM_HEADERS}
|
||||
${AJABASE_OS_PNP_HEADERS})
|
||||
set(AJABASE_OS_SOURCES
|
||||
${AJABASE_OS_SYSTEM_SOURCES}
|
||||
${AJABASE_OS_PNP_SOURCES})
|
||||
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJANTV2_OS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/win)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/windows)
|
||||
install(FILES ${AJABASE_OS_PNP_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/windows)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
set(AJANTV2_OS_SOURCES
|
||||
${AJANTV2_OS_SOURCES}
|
||||
src/win/dllmain.cpp)
|
||||
install(FILES ${AJANTV2_OS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/win)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/windows)
|
||||
install(FILES ${AJABASE_OS_PNP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/windows)
|
||||
endif()
|
||||
set(AJANTV2_HEADERS
|
||||
${AJANTV2_HEADERS}
|
||||
${AJANTV2_WIN_HEADERS})
|
||||
set(AJABASE_HEADERS
|
||||
${AJABASE_HEADERS}
|
||||
${AJABASE_PNP_WIN_HEADERS}
|
||||
${AJABASE_SYS_WIN_HEADERS})
|
||||
set(AJANTV2_SOURCES
|
||||
${AJANTV2_SOURCES}
|
||||
${AJANTV2_WIN_SOURCES})
|
||||
set(AJABASE_SOURCES
|
||||
${AJABASE_SOURCES}
|
||||
${AJABASE_PNP_WIN_SOURCES}
|
||||
${AJABASE_SYS_WIN_SOURCES})
|
||||
|
||||
set(TARGET_LINK_LIBS
|
||||
advapi32 comctl32 netapi32
|
||||
odbc32 psapi rpcrt4 setupapi shell32
|
||||
shlwapi user32 winmm ws2_32 wsock32)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set(EXTRA_STATIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_STATIC
|
||||
-DAJASTATIC)
|
||||
set(EXTRA_DYNAMIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_DYNAMIC
|
||||
-DAJADLL_BUILD
|
||||
-DAJADLL_BUILD)
|
||||
|
||||
|
@ -391,63 +436,28 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|||
${AJA_LIB_BASE_ROOT}/pnp/linux
|
||||
${AJA_LIB_BASE_ROOT}/system/linux)
|
||||
|
||||
set(AJANTV2_OS_HEADERS
|
||||
src/lin/ntv2linuxdriverinterface.h
|
||||
src/lin/ntv2linuxpublicinterface.h)
|
||||
set(AJANTV2_OS_SOURCES
|
||||
src/lin/ntv2linuxdriverinterface.cpp)
|
||||
|
||||
set(AJABASE_OS_SYSTEM_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/threadimpl.h)
|
||||
set(AJABASE_OS_SYSTEM_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/infoimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/linux/threadimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_PNP_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/linux/pnpimpl.h)
|
||||
set(AJABASE_OS_PNP_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/linux/pnpimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_HEADERS
|
||||
${AJABASE_OS_SYSTEM_HEADERS}
|
||||
${AJABASE_OS_PNP_HEADERS})
|
||||
set(AJABASE_OS_SOURCES
|
||||
${AJABASE_OS_SYSTEM_SOURCES}
|
||||
${AJABASE_OS_PNP_SOURCES})
|
||||
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJANTV2_OS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/lin)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/linux)
|
||||
install(FILES ${AJABASE_OS_PNP_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/linux)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJANTV2_OS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/lin)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/linux)
|
||||
install(FILES ${AJABASE_OS_PNP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/linux)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../ajalibraries/ajantv2/build/Makefile DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/common.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/configure.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/internal.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/qt.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/sdkversion.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/targets.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
endif()
|
||||
set(AJANTV2_HEADERS
|
||||
${AJANTV2_HEADERS}
|
||||
${AJANTV2_LIN_HEADERS})
|
||||
set(AJABASE_HEADERS
|
||||
${AJABASE_HEADERS}
|
||||
${AJABASE_PNP_LIN_HEADERS}
|
||||
${AJABASE_SYS_LIN_HEADERS})
|
||||
set(AJANTV2_SOURCES
|
||||
${AJANTV2_SOURCES}
|
||||
${AJANTV2_LIN_SOURCES})
|
||||
set(AJABASE_SOURCES
|
||||
${AJABASE_SOURCES}
|
||||
${AJABASE_PNP_LIN_SOURCES}
|
||||
${AJABASE_SYS_LIN_SOURCES})
|
||||
|
||||
set(TARGET_LINK_LIBS
|
||||
rt)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set(EXTRA_STATIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_STATIC
|
||||
-DAJASTATIC)
|
||||
|
||||
set(EXTRA_DYNAMIC_DEFINES
|
||||
set(TARGET_COMPILE_DEFS_DYNAMIC
|
||||
-DAJADLL_BUILD
|
||||
-DAJADLL_BUILD)
|
||||
|
||||
|
@ -457,54 +467,20 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|||
${AJA_LIB_BASE_ROOT}/system/mac
|
||||
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include)
|
||||
|
||||
set(AJANTV2_OS_HEADERS
|
||||
src/mac/ntv2macdriverinterface.h
|
||||
src/mac/ntv2macpublicinterface.h)
|
||||
set(AJANTV2_OS_SOURCES
|
||||
src/mac/ntv2macdriverinterface.cpp)
|
||||
|
||||
set(AJABASE_OS_PNP_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/devicenotifier.h
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/masterport.h
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/pnpimpl.h)
|
||||
set(AJABASE_OS_PNP_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/devicenotifier.cpp
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/masterport.cpp
|
||||
${AJA_LIB_BASE_ROOT}/pnp/mac/pnpimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_SYSTEM_HEADERS
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/eventimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/infoimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/lockimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/processimpl.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/pthreadsextra.h
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/threadimpl.h)
|
||||
set(AJABASE_OS_SYSTEM_SOURCES
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/eventimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/infoimpl.mm
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/lockimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/processimpl.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/pthreadsextra.cpp
|
||||
${AJA_LIB_BASE_ROOT}/system/mac/threadimpl.cpp)
|
||||
|
||||
set(AJABASE_OS_HEADERS
|
||||
${AJABASE_OS_SYSTEM_HEADERS}
|
||||
${AJABASE_OS_PNP_HEADERS})
|
||||
set(AJABASE_OS_SOURCES
|
||||
${AJABASE_OS_SYSTEM_SOURCES}
|
||||
${AJABASE_OS_PNP_SOURCES})
|
||||
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
install(FILES ${AJANTV2_OS_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/mac)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/mac)
|
||||
install(FILES ${AJABASE_OS_PNP_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/mac)
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
install(FILES ${AJANTV2_OS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/mac)
|
||||
install(FILES ${AJABASE_OS_SYSTEM_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/mac)
|
||||
install(FILES ${AJABASE_OS_PNP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/mac)
|
||||
endif()
|
||||
set(AJANTV2_HEADERS
|
||||
${AJANTV2_HEADERS}
|
||||
${AJANTV2_MAC_HEADERS})
|
||||
set(AJABASE_HEADERS
|
||||
${AJABASE_HEADERS}
|
||||
${AJABASE_PNP_MAC_HEADERS}
|
||||
${AJABASE_SYS_MAC_HEADERS})
|
||||
set(AJANTV2_SOURCES
|
||||
${AJANTV2_SOURCES}
|
||||
${AJANTV2_MAC_SOURCES})
|
||||
set(AJABASE_SOURCES
|
||||
${AJABASE_SOURCES}
|
||||
${AJABASE_PNP_MAC_SOURCES}
|
||||
${AJABASE_SYS_MAC_SOURCES})
|
||||
|
||||
find_library(CORE_FOUNDATION_FRAMEWORK CoreFoundation)
|
||||
find_library(FOUNDATION_FRAMEWORK Foundation)
|
||||
|
@ -516,20 +492,6 @@ elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
|||
${FOUNDATION_FRAMEWORK})
|
||||
endif()
|
||||
|
||||
# coalesce ajabase module headers and sources
|
||||
set(AJABASE_HEADERS
|
||||
${AJABASE_HEADERS}
|
||||
${AJABASE_OS_HEADERS})
|
||||
set(AJABASE_SOURCES
|
||||
${AJABASE_SOURCES}
|
||||
${AJABASE_OS_SOURCES})
|
||||
set(AJANTV2_HEADERS
|
||||
${AJANTV2_HEADERS}
|
||||
${AJANTV2_OS_HEADERS})
|
||||
set(AJANTV2_SOURCES
|
||||
${AJANTV2_SOURCES}
|
||||
${AJANTV2_OS_SOURCES})
|
||||
|
||||
set(AJANTV2_TARGET_SOURCES
|
||||
${AJAANC_SOURCES}
|
||||
${AJAANC_HEADERS}
|
||||
|
@ -545,71 +507,90 @@ if (NOT AJA_BUILD_OPENSOURCE)
|
|||
endif()
|
||||
|
||||
# libajantv2
|
||||
set(BUILD_TARGETS ajantv2)
|
||||
add_library(ajantv2 STATIC ${AJANTV2_TARGET_SOURCES})
|
||||
target_include_directories(ajantv2 PUBLIC ${AJANTV2_TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(ajantv2 PUBLIC ${TARGET_LINK_LIBS})
|
||||
target_compile_definitions(ajantv2 PUBLIC ${EXTRA_STATIC_DEFINES})
|
||||
target_compile_definitions(ajantv2 PUBLIC ${TARGET_COMPILE_DEFS_STATIC})
|
||||
if (AJA_NTV2_SDK_GEN)
|
||||
aja_ntv2_sdk_gen(ajantv2)
|
||||
endif()
|
||||
if (AJA_BUILD_SHARED)
|
||||
list(APPEND BUILD_TARGETS ajantv2-dyn)
|
||||
add_library(ajantv2-dyn SHARED ${AJANTV2_TARGET_SOURCES})
|
||||
target_compile_definitions(ajantv2-dyn PUBLIC ${EXTRA_DYNAMIC_DEFINES})
|
||||
target_compile_definitions(ajantv2-dyn PUBLIC ${TARGET_COMPILE_DEFS_DYNAMIC})
|
||||
target_include_directories(ajantv2-dyn PUBLIC ${AJANTV2_TARGET_INCLUDE_DIRS})
|
||||
target_link_libraries(ajantv2-dyn PUBLIC ${TARGET_LINK_LIBS} ${EXTRA_DYNAMIC_LIBRARIES})
|
||||
set_target_properties(ajantv2-dyn PROPERTIES OUTPUT_NAME "${PROJECT_NAME}_${AJA_NTV2_SDK_VERSION_MAJOR}")
|
||||
if (AJA_NTV2_SDK_GEN)
|
||||
aja_ntv2_sdk_gen(ajantv2-dyn)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
add_library(ajabase INTERFACE)
|
||||
|
||||
set(AJANTV2_UTILITY_PUBLIC_HEADERS
|
||||
utilityfiles/public/ntv2firmwareinstallerthread.h
|
||||
utilityfiles/public/ntv2hevcfirmwareinstallerthread.h)
|
||||
set(AJANTV2_UTILITY_PUBLIC_SOURCES
|
||||
utilityfiles/public/ntv2firmwareinstallerthread.cpp
|
||||
utilityfiles/public/ntv2hevcfirmwareinstallerthread.cpp)
|
||||
|
||||
# `cmake --install` deployments
|
||||
if (AJA_INSTALL_HEADERS)
|
||||
# Driver interface headers will be deployed to ajantv2/src/<platform>.
|
||||
# We remove them from the AJANTV2_HEADERS list before cmake install is run.
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/win/ntv2windriverinterface.h)
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/win/ntv2winpublicinterface.h)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/lin/ntv2linuxdriverinterface.h)
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/lin/ntv2linuxpublicinterface.h)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/mac/ntv2macdriverinterface.h)
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/mac/ntv2macpublicinterface.h)
|
||||
endif()
|
||||
list(REMOVE_ITEM AJANTV2_HEADERS src/ntv2devicefeatures.hpp)
|
||||
install(FILES ${AJABASE_COMMON_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/common)
|
||||
install(FILES ${AJABASE_NETWORK_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/network)
|
||||
install(FILES ${AJABASE_PERSISTENCE_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/persistence)
|
||||
install(FILES ${AJABASE_PNP_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp)
|
||||
install(FILES ${AJABASE_SYSTEM_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system)
|
||||
install(FILES ${AJAANC_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajaanc/includes)
|
||||
install(FILES ${AJANTV2_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/includes)
|
||||
install(FILES ${AJANTV2_UTILITY_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/utilityfiles/public)
|
||||
install(FILES ${AJABASE_COMMON_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/common)
|
||||
install(FILES ${AJABASE_NETWORK_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/network)
|
||||
install(FILES ${AJABASE_PERSISTENCE_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/persistence)
|
||||
install(FILES ${AJABASE_PNP_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/pnp)
|
||||
install(FILES ${AJABASE_PNP_WIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/pnp/windows)
|
||||
install(FILES ${AJABASE_PNP_MAC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/pnp/mac)
|
||||
install(FILES ${AJABASE_PNP_LIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/pnp/linux)
|
||||
install(FILES ${AJABASE_SYS_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/system)
|
||||
install(FILES ${AJABASE_SYS_WIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/system/windows)
|
||||
install(FILES ${AJABASE_SYS_MAC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/system/mac)
|
||||
install(FILES ${AJABASE_SYS_LIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajabase/system/linux)
|
||||
install(FILES ${AJAANC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajaanc/includes)
|
||||
install(FILES ${AJANTV2_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/includes)
|
||||
install(FILES ${AJANTV2_WIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/src/win)
|
||||
install(FILES ${AJANTV2_MAC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/src/mac)
|
||||
install(FILES ${AJANTV2_LIN_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/src/lin)
|
||||
install(FILES ${AJANTV2_UTILITY_PUBLIC_HEADERS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/utilityfiles/public)
|
||||
if (AJA_BUILDING_CMAKE)
|
||||
install(FILES includes/version.h.in DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ajalibraries/ajantv2/includes)
|
||||
endif()
|
||||
endif()
|
||||
if (AJA_INSTALL_SOURCES)
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
list(REMOVE_ITEM AJANTV2_SOURCES src/win/ntv2windriverinterface.cpp)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
list(REMOVE_ITEM AJANTV2_SOURCES src/lin/ntv2linuxdriverinterface.cpp)
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
list(REMOVE_ITEM AJANTV2_SOURCES src/mac/ntv2macdriverinterface.cpp)
|
||||
endif()
|
||||
list(APPEND AJANTV2_SOURCES src/ntv2devicefeatures.hpp)
|
||||
install(FILES ${AJABASE_COMMON_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/common)
|
||||
install(FILES ${AJABASE_NETWORK_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/network)
|
||||
install(FILES ${AJABASE_PERSISTENCE_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/persistence)
|
||||
install(FILES ${AJABASE_PNP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp)
|
||||
install(FILES ${AJABASE_SYSTEM_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system)
|
||||
install(FILES ${AJAANC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajaanc/src)
|
||||
install(FILES ${AJANTV2_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src)
|
||||
list(APPEND AJANTV2_WIN_SOURCES src/win/dllmain.cpp)
|
||||
install(FILES CMakeLists.txt DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2)
|
||||
install(FILES ${AJABASE_COMMON_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/common)
|
||||
install(FILES ${AJABASE_NETWORK_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/network)
|
||||
install(FILES ${AJABASE_PERSISTENCE_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/persistence)
|
||||
install(FILES ${AJABASE_PNP_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp)
|
||||
install(FILES ${AJABASE_PNP_WIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/windows)
|
||||
install(FILES ${AJABASE_PNP_MAC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/mac)
|
||||
install(FILES ${AJABASE_PNP_LIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/pnp/linux)
|
||||
install(FILES ${AJABASE_SYS_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system)
|
||||
install(FILES ${AJABASE_SYS_WIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/windows)
|
||||
install(FILES ${AJABASE_SYS_MAC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/mac)
|
||||
install(FILES ${AJABASE_SYS_LIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajabase/system/linux)
|
||||
install(FILES ${AJAANC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajaanc/src)
|
||||
install(FILES ${AJANTV2_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src)
|
||||
install(FILES ${AJANTV2_WIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/win)
|
||||
install(FILES ${AJANTV2_MAC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/mac)
|
||||
install(FILES ${AJANTV2_LIN_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/src/lin)
|
||||
install(FILES ${AJANTV2_UTILITY_PUBLIC_SOURCES} DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/utilityfiles/public)
|
||||
# build stuff
|
||||
install(FILES ${AJA_CMAKE_DIR}/../ajalibraries/ajantv2/build/Makefile DESTINATION ${CMAKE_INSTALL_PREFIX}/ajalibraries/ajantv2/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/common.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/configure.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/internal.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/qt.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/sdkversion.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
install(FILES ${AJA_CMAKE_DIR}/../build/targets.mk DESTINATION ${CMAKE_INSTALL_PREFIX}/build)
|
||||
endif()
|
||||
install(TARGETS ajantv2
|
||||
|
||||
install(TARGETS ${BUILD_TARGETS}
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_PREFIX})
|
||||
FRAMEWORK DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
|
||||
if (AJA_CODE_SIGN)
|
||||
aja_code_sign(ajantv2-dyn)
|
||||
endif()
|
||||
|
|
|
@ -7,5 +7,5 @@
|
|||
#define AJA_NTV2_SDK_VERSION_MINOR @AJA_NTV2_SDK_VERSION_MINOR@
|
||||
#define AJA_NTV2_SDK_VERSION_POINT @AJA_NTV2_SDK_VERSION_POINT@
|
||||
#define AJA_NTV2_SDK_BUILD_NUMBER @AJA_NTV2_SDK_BUILD_NUMBER@
|
||||
#define AJA_NTV2_SDK_BUILD_DATETIME @AJA_NTV2_SDK_BUILD_DATETIME@
|
||||
#define AJA_NTV2_SDK_BUILD_TYPE @AJA_NTV2_SDK_BUILD_TYPE@
|
||||
#define AJA_NTV2_SDK_BUILD_DATETIME "@AJA_NTV2_SDK_BUILD_DATETIME@"
|
||||
#define AJA_NTV2_SDK_BUILD_TYPE "@AJA_NTV2_SDK_BUILD_TYPE@"
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||||
set(CMAKE_DEBUG_POSTFIX d)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
|
||||
# macOS Build Settings
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
if (NOT DEFINED ENV{MACOSX_DEPLOYMENT_TARGET})
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum macOS deployment version" FORCE)
|
||||
endif()
|
||||
# Get the macOS SDK version
|
||||
get_filename_component(MACOS_SDK_NAME ${CMAKE_OSX_SYSROOT} NAME_WLE)
|
||||
string(REPLACE "MacOSX" "" MACOS_SDK_VERSION ${MACOS_SDK_NAME})
|
||||
string(REPLACE "." ";" MACOS_SDK_VERSION_LIST ${MACOS_SDK_VERSION})
|
||||
list(GET MACOS_SDK_VERSION_LIST 0 MACOS_SDK_VERSION_MAJOR)
|
||||
list(GET MACOS_SDK_VERSION_LIST 1 MACOS_SDK_VERSION_MINOR)
|
||||
set(MACOS_FRAMEWORKS_DIR ${CMAKE_OSX_SYSROOT}/System/Library/Frameworks)
|
||||
|
||||
# TODO(paulh): Generate macOS Universal (multi-architecture) builds.
|
||||
# This will require Qt6+ for the AJA Retail apps.
|
||||
# e.g. set(CMAKE_OSX_ARCHITECTURES arm64 x86_64)
|
||||
endif()
|
||||
|
||||
if (AJA_QT_DIR)
|
||||
aja_message(STATUS "AJA Qt Dir Variable: ${AJA_QT_DIR}")
|
||||
endif()
|
||||
if (DEFINED ENV{AJA_QT_DIR})
|
||||
set(AJA_QT_DIR $ENV{AJA_QT_DIR})
|
||||
aja_message(STATUS "AJA Qt Dir Environment: $ENV{AJA_QT_DIR}")
|
||||
endif()
|
||||
|
||||
option(AJA_BUILD_OPENSOURCE "Build NTV2 SDK as open-source (MIT license)?" ON)
|
||||
option(AJA_BUILD_QT_BASED "Build NTV2 Demos and Apps which depend upon Qt?" ON)
|
||||
option(AJA_BUILD_SHARED "Build NTV2 shared libraries?" OFF)
|
||||
option(AJA_CODE_SIGN "Code sign binary outputs?" OFF) # for AJA internal CI builds only
|
||||
option(AJA_DEPLOY_LIBS "Deploy dependency libraries (DLL/dylib) into the .exe output directory (Win32) or .app bundle (macOS)?" OFF)
|
||||
option(AJA_INSTALL_SOURCES "Deploy sources into build output directory?" ON)
|
||||
option(AJA_INSTALL_HEADERS "Deploy headers into build output directory?" ON)
|
||||
option(AJA_NTV2_SDK_GEN "Run the ajantv2 `sdkgen` script before building (not available in NTV2 open-source)?" OFF)
|
||||
option(AJA_USE_CLANG "Build NTV2 SDK with LLVM Clang compiler?" OFF)
|
||||
option(AJA_USE_GCC_NEW_ABI "Build NTV2 SDK with GCC 5 or later?" OFF) # for AJA internal CI builds only
|
||||
option(AJA_BUILDING_CMAKE "Set to ON if building the NTV2 repo with CMake" OFF)
|
||||
|
||||
if (AJA_BUILD_OPENSOURCE)
|
||||
aja_message(STATUS "Building open-source AJA NTV2 SDK (MIT license)")
|
||||
option(AJA_BUILD_APPS "Build AJA NTV2 applications?" ON)
|
||||
option(AJA_BUILD_DOCS "Build AJA NTV2 documentation?" OFF)
|
||||
option(AJA_BUILD_DRIVER "Build AJA NTV2 driver?" ON)
|
||||
option(AJA_BUILD_LIBS "Build AJA libraries?" ON)
|
||||
option(AJA_BUILD_NONAJA "Build non-aja shared libraries?" OFF)
|
||||
option(AJA_BUILD_PLUGINS "Build AJA Plug-ins?" OFF)
|
||||
option(AJA_BUILD_QA "Build AJA NTV2 QA apps and libs?" OFF)
|
||||
option(AJA_BUILD_TESTS "Build unit tests?" OFF)
|
||||
else()
|
||||
# build NTV2 as proprietary, including certain proprietary apps, plugins, etc.
|
||||
aja_message(STATUS "Building AJA NTV2 SDK for internal and OEM usage")
|
||||
option(AJA_BUILD_APPS "Build AJA NTV2 applications?" ON)
|
||||
option(AJA_BUILD_DOCS "Build AJA NTV2 documentation?" OFF)
|
||||
option(AJA_BUILD_DRIVER "Build AJA NTV2 driver?" ON)
|
||||
option(AJA_BUILD_LIBS "Build AJA libraries?" ON)
|
||||
option(AJA_BUILD_NONAJA "Build non-aja shared libraries?" ON)
|
||||
option(AJA_BUILD_PLUGINS "Build AJA Plug-ins?" ON)
|
||||
option(AJA_BUILD_QA "Build AJA NTV2 QA apps and libs?" ON)
|
||||
option(AJA_BUILD_TESTS "Build unit tests?" ON)
|
||||
endif()
|
|
@ -1,14 +1,13 @@
|
|||
# Common preprocessor defines
|
||||
if(CMAKE_BUILD_TYPE MATCHES Debug)
|
||||
message("Build Type: Debug")
|
||||
aja_message(STATUS "Build Type: Debug")
|
||||
add_definitions(-DAJA_DEBUG -D_DEBUG)
|
||||
elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo)
|
||||
message("Build Type: Release with Debug Symbols")
|
||||
aja_message(STATUS "Build Type: Release with Debug Symbols")
|
||||
else()
|
||||
message("Build Type: Release")
|
||||
aja_message(STATUS "Build Type: Release")
|
||||
add_definitions(-DNDEBUG)
|
||||
endif()
|
||||
|
||||
# Platform-specific preprocessor defines
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
add_definitions(
|
|
@ -5,9 +5,12 @@ set(AJA_APPS_ROOT ${AJA_CMAKE_DIR}/../ajaapps)
|
|||
set(AJA_DRIVER_ROOT ${AJA_CMAKE_DIR}/../ajadriver)
|
||||
set(AJA_LIBRARIES_ROOT ${AJA_CMAKE_DIR}/../ajalibraries)
|
||||
set(AJA_PLUGINS_ROOT ${AJA_CMAKE_DIR}/../ajaplugins)
|
||||
set(AJA_BUILD_ROOT ${AJA_CMAKE_DIR}/../build)
|
||||
set(AJA_INSTALLERS_ROOT ${AJA_CMAKE_DIR}/../installers)
|
||||
set(AJA_QA_ROOT ${AJA_CMAKE_DIR}/../qa)
|
||||
set(NON_AJA_ROOT ${AJA_CMAKE_DIR}/../non-aja)
|
||||
set(AJA_DEMO_COMMON_ROOT ${AJA_APPS_ROOT}/crossplatform/demoapps)
|
||||
set(AJA_CI_ROOT ${AJA_CMAKE_DIR}/../CI)
|
||||
|
||||
set(AJA_LIB_ANC_ROOT ${AJA_LIBRARIES_ROOT}/ajaanc)
|
||||
set(AJA_LIB_BASE_ROOT ${AJA_LIBRARIES_ROOT}/ajabase)
|
|
@ -1,7 +1,7 @@
|
|||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
set(AJA_BITS 64)
|
||||
message(STATUS "Bits: 64-bit")
|
||||
aja_message(STATUS "Bits: 64-bit")
|
||||
else()
|
||||
set(AJA_BITS 32)
|
||||
message(STATUS "Bits: 32-bit")
|
||||
aja_message(STATUS "Bits: 32-bit")
|
||||
endif()
|
|
@ -1,12 +1,126 @@
|
|||
if(NOT DEFINED Python2_EXECUTABLE)
|
||||
find_package(Python2 QUIET)
|
||||
endif()
|
||||
if(NOT DEFINED Python3_EXECUTABLE)
|
||||
find_package(Python3 QUIET)
|
||||
endif()
|
||||
if(NOT DEFINED GIT_EXECUTABLE)
|
||||
find_package(Git QUIET)
|
||||
endif()
|
||||
function(aja_message mode msg)
|
||||
message(${mode} "AJA: ${msg}" ${ARGN})
|
||||
endfunction(aja_message)
|
||||
|
||||
aja_message(STATUS "Python 2 Executable: ${Python2_EXECUTABLE}")
|
||||
aja_message(STATUS "Python 3 Executable: ${Python3_EXECUTABLE}")
|
||||
aja_message(STATUS "Git Executable: ${GIT_EXECUTABLE}")
|
||||
|
||||
# wrapper around add_subdirectory that only adds the directory
|
||||
# if the target exists and contains a CMakeLists.txt file
|
||||
function(add_subdirectory_if_valid target)
|
||||
if (EXISTS ${target} AND EXISTS ${target}/CMakeLists.txt)
|
||||
add_subdirectory(${target})
|
||||
# NOTE: Has an optional variadic arg for specifying a full project name (eg. AJA ControlRoom, etc.)
|
||||
function(aja_add_subdirectory target)
|
||||
set(AJA_PRODUCT_NAME "")
|
||||
set (variadic_args ${ARGN})
|
||||
list(LENGTH variadic_args variadic_count)
|
||||
if (${variadic_count} GREATER 0)
|
||||
list(GET variadic_args 0 AJA_PRODUCT_NAME)
|
||||
endif()
|
||||
endfunction()
|
||||
if (${variadic_count} GREATER 1)
|
||||
list(GET variadic_args 1 AJA_PRODUCT_DESC)
|
||||
endif()
|
||||
set(target_path ${CMAKE_CURRENT_SOURCE_DIR}/${target})
|
||||
if (EXISTS ${target_path} AND EXISTS ${target_path}/CMakeLists.txt)
|
||||
add_subdirectory(${target_path})
|
||||
set(status_msg "added target: ${target}")
|
||||
if (AJA_PRODUCT_NAME)
|
||||
set(status_msg "${status_msg} (${AJA_PRODUCT_NAME})")
|
||||
endif()
|
||||
aja_message(STATUS ${status_msg})
|
||||
else()
|
||||
set(status_msg "target not found: ${target}")
|
||||
if (AJA_PRODUCT_NAME)
|
||||
set(status_msg "${status_msg} (${AJA_PRODUCT_NAME})")
|
||||
endif()
|
||||
aja_message(WARNING ${status_msg})
|
||||
endif()
|
||||
endfunction(aja_add_subdirectory)
|
||||
|
||||
function(post_build_copy_file target src dst)
|
||||
add_custom_command(TARGET ${target} POST_BUILD
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${src} ${dst})
|
||||
endfunction()
|
||||
endfunction(post_build_copy_file)
|
||||
|
||||
function(aja_make_version_rc product_name product_desc file_in file_out icon_file)
|
||||
set(AJA_APP_ICON ${icon_file})
|
||||
set(AJA_PRODUCT_NAME ${product_name})
|
||||
set(AJA_PRODUCT_DESC ${product_desc})
|
||||
configure_file(${file_in} ${file_out} @ONLY)
|
||||
endfunction(aja_make_version_rc)
|
||||
|
||||
function(aja_make_version_elf target product_name product_desc file_in file_out icon_file)
|
||||
set(AJA_APP_ICON ${icon_file})
|
||||
set(AJA_PRODUCT_NAME ${product_name})
|
||||
set(AJA_PRODUCT_DESC ${product_desc})
|
||||
configure_file(${file_in} ${file_out} @ONLY)
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
# embed version info as JSON in elf header
|
||||
add_custom_command(TARGET ${target} POST_BUILD
|
||||
COMMAND
|
||||
objcopy
|
||||
--add-section "aja_app_info=${file_out}"
|
||||
"$<TARGET_FILE:${target}>"
|
||||
VERBATIM)
|
||||
endif()
|
||||
endfunction(aja_make_version_elf)
|
||||
|
||||
function(aja_make_version_plist target product_name bundle_sig file_in file_out icon_file)
|
||||
set(AJA_PRODUCT_NAME ${product_name})
|
||||
set(AJA_BUNDLE_SIGNATURE ${bundle_sig})
|
||||
get_filename_component(icon_filename ${icon_file} NAME)
|
||||
set(AJA_APP_ICON ${icon_filename})
|
||||
aja_message(STATUS "mac icon: ${icon_filename}")
|
||||
configure_file(${file_in} ${file_out} @ONLY)
|
||||
set_source_files_properties(${file_out} PROPERTIES
|
||||
MACOSX_PACKAGE_LOCATION Contents)
|
||||
set_source_files_properties(${icon_file} PROPERTIES
|
||||
MACOSX_PACKAGE_LOCATION Resources)
|
||||
set_target_properties(${target} PROPERTIES
|
||||
MACOSX_BUNDLE TRUE
|
||||
MACOSX_BUNDLE_INFO_PLIST ${file_out})
|
||||
endfunction(aja_make_version_plist)
|
||||
|
||||
function(aja_code_sign targets)
|
||||
# Code sign build targets with aja "pythonlib" helper scripts.
|
||||
# NOTE: This functionality is not yet available in ntv2 open-source.
|
||||
if (UNIX AND NOT APPLE)
|
||||
aja_message(STATUS "Code signing is not available on this platform!")
|
||||
return()
|
||||
endif()
|
||||
|
||||
foreach(target IN LISTS targets)
|
||||
if (EXISTS "${AJA_NTV2_ROOT}/installers/pythonlib/aja/tools/sign.py")
|
||||
set(pythonlib_path ${AJA_NTV2_ROOT}/installers/pythonlib)
|
||||
get_filename_component(pythonlib_path "${pythonlib_path}" REALPATH)
|
||||
set(sign_script_path ${AJA_NTV2_ROOT}/installers/pythonlib/aja/tools/sign.py)
|
||||
get_filename_component(sign_script_path "${sign_script_path}" REALPATH)
|
||||
aja_message(STATUS "Code Sign: $<TARGET_FILE:${target}>")
|
||||
add_custom_command(TARGET ${target} POST_BUILD
|
||||
COMMAND
|
||||
${CMAKE_COMMAND} -E env "PYTHONPATH=\"${pythonlib_path}\""
|
||||
${Python3_EXECUTABLE}
|
||||
${sign_script_path}
|
||||
$<TARGET_FILE:${target}>
|
||||
COMMENT "Signing '$<TARGET_FILE:${target}>' ...")
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction(aja_code_sign)
|
||||
|
||||
function(aja_ntv2_sdk_gen target_deps)
|
||||
add_custom_command(
|
||||
TARGET ${target_deps} PRE_BUILD
|
||||
COMMAND
|
||||
${Python2_EXECUTABLE} ${AJA_NTV2_ROOT}/ajalibraries/ajantv2/sdkgen/ntv2sdkgen.py
|
||||
--verbose --unused --ajantv2 ajalibraries/ajantv2 --ohh ajalibraries/ajantv2/includes --ohpp ajalibraries/ajantv2/src
|
||||
WORKING_DIRECTORY ${AJA_NTV2_ROOT}
|
||||
COMMENT "Running ntv2sdkgen script...")
|
||||
endfunction(aja_ntv2_sdk_gen)
|
|
@ -42,7 +42,7 @@ function(deploy_qt_libs target)
|
|||
|
||||
get_target_property(_is_target_bundle ${target} MACOSX_BUNDLE)
|
||||
if (_is_target_bundle)
|
||||
message("macOS bundle: ${target}")
|
||||
aja_message(STATUS "macOS bundle: ${target}")
|
||||
add_custom_target(
|
||||
${target}_macqtdeploy ALL
|
||||
DEPENDS $<TARGET_BUNDLE_DIR:${target}>
|
||||
|
@ -51,7 +51,7 @@ function(deploy_qt_libs target)
|
|||
VERBATIM
|
||||
)
|
||||
else()
|
||||
message("macOS binary: ${target}")
|
||||
aja_message(STATUS "macOS binary: ${target}")
|
||||
add_custom_target(
|
||||
${target}_macqtdeploy ALL
|
||||
DEPENDS $<TARGET_FILE_DIR:${target}>
|
||||
|
@ -63,7 +63,7 @@ function(deploy_qt_libs target)
|
|||
|
||||
add_dependencies(${target}_macqtdeploy ${target})
|
||||
elseif (UNIX AND NOT APPLE)
|
||||
message("lin_deploy_qt: ${target}")
|
||||
aja_message(STATUS "lin_deploy_qt: ${target}")
|
||||
set(LIB_RPATH "")
|
||||
set(QT_LIBS_OPATH "")
|
||||
set(QT_PLUGINS_OPATH "")
|
|
@ -0,0 +1,37 @@
|
|||
set(AJA_COMPANY_NAME "AJA Video Systems, Inc.")
|
||||
set(AJA_WEBSITE "https://www.aja.com/")
|
||||
|
||||
# NTV2 SDK version number variables. Generates an include file in `ajantv2/includes/ntv2version.h`,
|
||||
# which is used throughout the SDK via `ajantv2/includes/ntv2enums.h`.
|
||||
# Override the following variables to set an arbitrary NTV2 SDK version number.
|
||||
if (AJA_BUILDING_CMAKE)
|
||||
string(TIMESTAMP AJA_BUILD_MONTH "%m")
|
||||
string(TIMESTAMP AJA_BUILD_DAY "%d")
|
||||
string(TIMESTAMP AJA_BUILD_YEAR "%Y")
|
||||
string(TIMESTAMP DATETIME_NOW "%m/%d/%Y +8:%H:%M:%S")
|
||||
if (NOT AJA_NTV2_SDK_VERSION_MAJOR)
|
||||
set(AJA_NTV2_SDK_VERSION_MAJOR "16")
|
||||
endif()
|
||||
if (NOT AJA_NTV2_SDK_VERSION_MINOR)
|
||||
set(AJA_NTV2_SDK_VERSION_MINOR "3")
|
||||
endif()
|
||||
if (NOT AJA_NTV2_SDK_VERSION_POINT)
|
||||
set(AJA_NTV2_SDK_VERSION_POINT "1")
|
||||
endif()
|
||||
|
||||
set(BUILD_NUMBER_CACHE
|
||||
${CMAKE_MODULE_PATH}.CMakeBuildNumber
|
||||
CACHE INTERNAL "AJA NTV2 build number cache file")
|
||||
if (NOT AJA_NTV2_SDK_BUILD_NUMBER AND EXISTS ${BUILD_NUMBER_CACHE})
|
||||
file(READ ${BUILD_NUMBER_CACHE} AJA_NTV2_SDK_BUILD_NUMBER)
|
||||
math(EXPR AJA_NTV2_SDK_BUILD_NUMBER "${AJA_NTV2_SDK_BUILD_NUMBER}+1")
|
||||
elseif(NOT DEFINED AJA_NTV2_SDK_BUILD_NUMBER)
|
||||
set(AJA_NTV2_SDK_BUILD_NUMBER "1")
|
||||
endif()
|
||||
set(AJA_NTV2_SDK_BUILD_DATETIME ${DATETIME_NOW})
|
||||
set(AJA_NTV2_VER_STR "${AJA_NTV2_SDK_VERSION_MAJOR}.${AJA_NTV2_SDK_VERSION_MINOR}.${AJA_NTV2_SDK_VERSION_POINT}")
|
||||
set(AJA_NTV2_VER_STR_LONG "${AJA_NTV2_VER_STR}.${AJA_NTV2_SDK_BUILD_NUMBER}")
|
||||
string(REPLACE "." "," AJA_NTV2_VER_STR_COMMA "${AJA_NTV2_VER_STR_LONG}")
|
||||
set(AJA_NTV2_SDK_BUILD_TYPE "d") # r = release, d = debug, b = beta
|
||||
aja_message(STATUS "NTV2 SDK Version: ${AJA_NTV2_VER_STR} ${aja_ntv2_build_type_letter}${AJA_NTV2_SDK_BUILD_NUMBER}")
|
||||
endif()
|
|
@ -1,72 +0,0 @@
|
|||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||||
set(CMAKE_DEBUG_POSTFIX d)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
|
||||
# macOS build settings
|
||||
if (NOT DEFINED ENV{MACOSX_DEPLOYMENT_TARGET})
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum macOS deployment version" FORCE)
|
||||
endif()
|
||||
# TODO(paulh): generate universal builds up front
|
||||
# set(CMAKE_OSX_ARCHITECTURES arm64 x86_64)
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
# get the Mac OS SDK major and minor numbers
|
||||
# MACOS_SDK_NAME will contain something like MacOSX11.1
|
||||
# MACOS_SDK_VERSION = 11.1
|
||||
# MACOS_SDK_VERSION_MAJOR = 11
|
||||
# MACOS_SDK_VERSION_MINOR = 1
|
||||
get_filename_component(MACOS_SDK_NAME ${CMAKE_OSX_SYSROOT} NAME_WLE)
|
||||
string(REPLACE "MacOSX" "" MACOS_SDK_VERSION ${MACOS_SDK_NAME})
|
||||
string(REPLACE "." ";" MACOS_SDK_VERSION_LIST ${MACOS_SDK_VERSION})
|
||||
list(GET MACOS_SDK_VERSION_LIST 0 MACOS_SDK_VERSION_MAJOR)
|
||||
list(GET MACOS_SDK_VERSION_LIST 1 MACOS_SDK_VERSION_MINOR)
|
||||
|
||||
set(MACOS_FRAMEWORKS_DIR ${CMAKE_OSX_SYSROOT}/System/Library/Frameworks)
|
||||
endif()
|
||||
|
||||
if (AJA_QT_DIR)
|
||||
message("AJA Qt Dir Variable: ${AJA_QT_DIR}")
|
||||
endif()
|
||||
if (DEFINED ENV{AJA_QT_DIR})
|
||||
set(AJA_QT_DIR $ENV{AJA_QT_DIR})
|
||||
message("AJA Qt Dir Environment: $ENV{AJA_QT_DIR}")
|
||||
endif()
|
||||
|
||||
option(AJA_BUILD_OPENSOURCE "Build NTV2 SDK as open-source (MIT license)" ON)
|
||||
|
||||
# Build ajantv2 open-source SDK
|
||||
if (AJA_BUILD_OPENSOURCE)
|
||||
message("NOTE: Building open-source AJA NTV2 SDK components (MIT license)")
|
||||
option(AJA_BUILDING_CMAKE "Build NTV2 SDK with version.h generated by CMake" OFF)
|
||||
option(AJA_BUILD_QT_BASED "Build NTV2 Demos and Apps which depend upon Qt" ON)
|
||||
option(AJA_BUILD_SHARED "Build NTV2 shared libraries" OFF)
|
||||
option(AJA_DEPLOY_OUTPUTS "Gather build artifacts into top-level directory, and in bin/lib dirs." OFF)
|
||||
option(AJA_INSTALL_SOURCES "Deploy sources into build output directory." OFF)
|
||||
option(AJA_INSTALL_HEADERS "Deploy headers into build output directory." OFF)
|
||||
option(AJA_DEPLOY_LIBS "Deploy dependency libraries (DLL/dylib) into the .exe output directory (Win32) or .app bundle (macOS)." OFF)
|
||||
|
||||
option(AJA_BUILD_APPS "Build AJA NTV2 applications" ON)
|
||||
option(AJA_BUILD_DRIVER "Build AJA NTV2 driver" ON)
|
||||
option(AJA_BUILD_LIBS "Build AJA libraries" ON)
|
||||
option(AJA_BUILD_PLUGINS "Build AJA Plug-ins" OFF)
|
||||
option(AJA_BUILD_TESTS "Build unit tests" OFF)
|
||||
option(AJA_BUILD_QA "Build AJA NTV2 QA apps and libs" OFF)
|
||||
option(AJA_BUILD_NONAJA "Build non-aja shared libraries" OFF)
|
||||
else()
|
||||
option(AJA_BUILDING_CMAKE "Build NTV2 SDK with version.h generated by CMake" OFF)
|
||||
option(AJA_BUILD_QT_BASED "Build NTV2 Demos and Apps which depend upon Qt" ON)
|
||||
option(AJA_BUILD_SHARED "Build NTV2 shared libraries" OFF)
|
||||
option(AJA_DEPLOY_OUTPUTS "Gather build artifacts into top-level directory, and in bin/lib dirs." OFF)
|
||||
option(AJA_INSTALL_SOURCES "Deploy sources into build output directory." OFF)
|
||||
option(AJA_INSTALL_HEADERS "Deploy headers into build output directory." OFF)
|
||||
option(AJA_DEPLOY_LIBS "Deploy dependency libraries (DLL/dylib) into the .exe output directory (Win32) or .app bundle (macOS)." OFF)
|
||||
|
||||
option(AJA_BUILD_APPS "Build AJA NTV2 applications" ON)
|
||||
option(AJA_BUILD_DRIVER "Build AJA NTV2 driver" ON)
|
||||
option(AJA_BUILD_LIBS "Build AJA libraries" ON)
|
||||
option(AJA_BUILD_PLUGINS "Build AJA Plug-ins" ON)
|
||||
option(AJA_BUILD_TESTS "Build unit tests" ON)
|
||||
option(AJA_BUILD_QA "Build AJA NTV2 QA apps and libs" ON)
|
||||
option(AJA_BUILD_NONAJA "Build non-aja shared libraries" ON)
|
||||
endif()
|
|
@ -0,0 +1 @@
|
|||
{"AppName": "@AJA_PRODUCT_NAME@","AppDescription": "@AJA_PRODUCT_DESC@","AppVersion": "@AJA_NTV2_VER_STR@","AppVersionMajor": "@AJA_NTV2_SDK_VERSION_MAJOR@","AppVersionMinor": "@AJA_NTV2_SDK_VERSION_MINOR@","AppVersionPoint": "@AJA_NTV2_SDK_VERSION_POINT@","AppVersionBuild": "@AJA_NTV2_SDK_BUILD_NUMBER@","AppBuildYear": "@AJA_BUILD_YEAR@","AppBuildMonth": "@AJA_BUILD_MONTH@","AppBuildDay": "@AJA_BUILD_DAY@","AppCopyright": "Copyright (C) @AJA_COMPANY_NAME@ 2011-@AJA_BUILD_YEAR@","CompanyName": "@AJA_COMPANY_NAME@"}
|
|
@ -0,0 +1,30 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>@PROJECT_NAME@</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>@AJA_PRODUCT_NAME@</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.aja.@PROJECT_NAME@</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>@AJA_APP_ICON@</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>@AJA_BUNDLE_SIGNATURE@</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>@AJA_NTV2_VER_STR@</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>@AJA_NTV2_VER_STR@</string>
|
||||
<key>NSHumanReadableCopyright</key>
|
||||
<string>Copyright © @AJA_COMPANY_NAME@ 2012-@AJA_BUILD_YEAR@</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>@AJA_NTV2_VER_STR@ Copyright © @AJA_COMPANY_NAME@ 2012-@AJA_BUILD_YEAR@</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -0,0 +1,136 @@
|
|||
// Microsoft Visual C++ generated resource script.
|
||||
//
|
||||
//#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// English (U.S.) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
// These variables replaced by CMake builds
|
||||
#define COMPANY_NAME_STR "@AJA_COMPANY_NAME@\0"
|
||||
#define INTERNAL_NAME_STR "@PROJECT_NAME@\0"
|
||||
#define ORIGINAL_FILENAME_STR "@PROJECT_NAME@.exe\0"
|
||||
#define PRODUCT_NAME_STR "@AJA_PRODUCT_NAME@\0"
|
||||
|
||||
#define VER_FILEVERSION @AJA_NTV2_VER_STR_COMMA@
|
||||
#define VER_FILEVERSION_STR "@AJA_NTV2_VER_STR_LONG@\0"
|
||||
|
||||
#define VER_PRODUCTVERSION @AJA_NTV2_VER_STR_COMMA@
|
||||
#define VER_PRODUCTVERSION_STR "@AJA_NTV2_VER_STR_LONG@\0"
|
||||
|
||||
#define LEGAL_COPYRIGHT_STR "© @AJA_COMPANY_NAME@ @AJA_BUILD_YEAR@\0"
|
||||
|
||||
#ifndef DEBUG
|
||||
#define VER_DEBUG 0
|
||||
#define VER_PRERELEASE 0
|
||||
#define VER_PRIVATEBUILD 0
|
||||
#else
|
||||
#define VER_DEBUG VS_FF_DEBUG
|
||||
#define VER_PRERELEASE VS_FF_PRERELEASE
|
||||
#define VER_PRIVATEBUILD 0
|
||||
#endif
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION VER_FILEVERSION
|
||||
PRODUCTVERSION VER_PRODUCTVERSION
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEFLAGS (VER_PRIVATEBUILD|VER_PRERELEASE|VER_DEBUG)
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_DLL
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904E4"
|
||||
BEGIN
|
||||
VALUE "CompanyName", COMPANY_NAME_STR
|
||||
VALUE "FileDescription", "\0"
|
||||
VALUE "FileVersion", VER_FILEVERSION_STR
|
||||
VALUE "InternalName", INTERNAL_NAME_STR
|
||||
VALUE "LegalCopyright", LEGAL_COPYRIGHT_STR
|
||||
VALUE "LegalTrademarks1", "\0"
|
||||
VALUE "LegalTrademarks2", "\0"
|
||||
VALUE "OriginalFilename", ORIGINAL_FILENAME_STR
|
||||
VALUE "ProductName", PRODUCT_NAME_STR
|
||||
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
|
||||
END
|
||||
END
|
||||
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
/* The following line should only be modified for localized versions. */
|
||||
/* It consists of any number of WORD,WORD pairs, with each pair */
|
||||
/* describing a language,codepage combination supported by the file. */
|
||||
/* */
|
||||
/* For example, a file might have values "0x409,1252" indicating that it */
|
||||
/* supports English language (0x409) in the Windows ANSI codepage (1252). */
|
||||
|
||||
VALUE "Translation", 0x409, 1252
|
||||
|
||||
END
|
||||
END
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDI_ICON1 ICON DISCARDABLE "@AJA_APP_ICON@"
|
||||
#endif // English (U.S.) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
set(CMAKE_C_COMPILER clang)
|
||||
set(CMAKE_CXX_COMPILER clang++)
|
|
@ -0,0 +1,34 @@
|
|||
# Toolchain intended for AJA internal CI builds
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
if (AJA_USE_CLANG)
|
||||
set(CMAKE_C_COMPILER clang.exe)
|
||||
set(CMAKE_CXX_COMPILER clang++.exe)
|
||||
else()
|
||||
set(CMAKE_C_COMPILER cl.exe)
|
||||
set(CMAKE_CXX_COMPILER cl.exe)
|
||||
endif()
|
||||
elseif (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
if (AJA_USE_CLANG)
|
||||
set(CMAKE_C_COMPILER clang)
|
||||
set(CMAKE_CXX_COMPILER clang++)
|
||||
else()
|
||||
if(AJA_USE_GCC_NEW_ABI)
|
||||
# GCC >= 5 (supports C++11)
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
if (NOT EXISTS /opt/aja/bin/g++)
|
||||
message(FATAL_ERROR "AJA: GCC 5 not found in /opt/aja/bin")
|
||||
return()
|
||||
endif()
|
||||
message(STATUS "AJA: Building with GCC 5 in /opt/aja/bin")
|
||||
set(CMAKE_C_COMPILER /opt/aja/bin/gcc)
|
||||
set(CMAKE_CXX_COMPILER /opt/aja/bin/g++)
|
||||
else()
|
||||
# GCC <= 4.8.5 (CentOS7 default compiler)
|
||||
set(CMAKE_CXX_STANDARD 98)
|
||||
set(CMAKE_C_COMPILER gcc)
|
||||
set(CMAKE_CXX_COMPILER g++)
|
||||
endif()
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
# no-op
|
||||
endif()
|
|
@ -0,0 +1,2 @@
|
|||
set(CMAKE_C_COMPILER clang)
|
||||
set(CMAKE_CXX_COMPILER clang++)
|
|
@ -0,0 +1,2 @@
|
|||
set(CMAKE_C_COMPILER clang.exe)
|
||||
set(CMAKE_CXX_COMPILER clang++.exe)
|
|
@ -0,0 +1,2 @@
|
|||
set(CMAKE_C_COMPILER cl.exe)
|
||||
set(CMAKE_CXX_COMPILER cl.exe)
|
Loading…
Reference in New Issue