Skip to content

Commit

Permalink
Minor fixes to build in Linux
Browse files Browse the repository at this point in the history
  • Loading branch information
hkbinaurics committed Nov 19, 2023
1 parent 9cc3fde commit 2076692
Show file tree
Hide file tree
Showing 10 changed files with 154 additions and 123 deletions.
4 changes: 1 addition & 3 deletions cmake/fragments/thrdparty.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -117,11 +117,9 @@ if(JVX_USE_EIGEN)
endif()

if(JVX_USE_HDF5)
if(JVX_INSTALL_EXTERNAL_LIBS)
# This part here only when downloading HDF5
# This part here only when downloading HDF5 i windows
set(JVX_BASE_3RDPARTY_LIBS ${JVX_BASE_3RDPARTY_LIBS}
${JVX_SUBPRODUCT_ROOT}/sources/jvxLibraries/third_party/web/hdf5)
endif()
endif()


40 changes: 34 additions & 6 deletions sources/jvxApplications/jvxMeasureIr/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
if(DEFINED JVX_SDK_PATH)
include(${JVX_SDK_PATH}/cmake/standalone.cmake)
endif(DEFINED JVX_SDK_PATH)

# Some common include files
set(PROJECT_NAME jvxMeasureIr)
include(${JVX_CMAKE_DIR}/common_local_exe_head.cmake)

# Decide which host library to link with
set(JVX_LINK_WITH_AUDIO_HOST TRUE)

# Source code files
set(LOCAL_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/src/involve_audio_nodes.cpp
Expand All @@ -18,8 +17,37 @@ include_directories(
)


# Link against either audio host lib or develop host lib
if(JVX_LINK_WITH_AUDIO_HOST)

# Link with audio host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLAudioHost__algostatic_static
)

# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.audiohost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()
else()

# Link with develop host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLDevelopHost_static
)
# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.develophost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()

endif()

set(LOCAL_LIBS_COMMON ${LOCAL_LIBS})

# Add algorithm specific library
set(LOCAL_LIBS
set(LOCAL_LIBS ${LOCAL_LIBS_COMMON}
jvx-qt-measure-ir-1dev-app-lib_static
jvxSpNSpeakerEqualizer_static
)
Expand All @@ -40,7 +68,7 @@ include(${JVX_CMAKE_DIR}/common_local_exe_foot.cmake)
# Here, the version for 2 devices
set(JVX_TARGET_NAME ${PROJECT_NAME}2Dev)
set(JVX_TARGET_NAME_STATIC ${PROJECT_NAME}2Dev)
set(LOCAL_LIBS
set(LOCAL_LIBS ${LOCAL_LIBS_COMMON}
jvx-qt-measure-ir-2dev-app-lib_static
jvxSpNSpeakerEqualizer_static
)
Expand Down
3 changes: 2 additions & 1 deletion sources/jvxLibraries/ayf-hdf5io/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,11 @@ set(LOCAL_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/src/CayfHdf5Io.cpp
)


set(LOCAL_LIBS
${AYF_HDF5_LIBRARIES}
)

# link_directories(${AYF_HDF5_LIBRARY_DIR})
# message(FATAL_ERROR "-> ${AYF_HDF5_LIBRARY_DIR}")
set(BUILD_STATIC TRUE)
include(${JVX_CMAKE_DIR}/common_local_lib_foot.cmake)
97 changes: 51 additions & 46 deletions sources/jvxLibraries/ayf-hdf5io/src/CayfHdf5Io.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,34 +33,34 @@ hdf5ToAyfDataType(hid_t tp)
H5T_class_t ctp = H5Tget_class(tp);
switch (ctp) {
case H5T_INTEGER:
if (H5Tequal(tp, H5T_STD_I8LE) == TRUE)
if (H5Tequal(tp, H5T_STD_I8LE) == true)
retVal = JVX_DATAFORMAT_8BIT;
else if (H5Tequal(tp, H5T_STD_I16LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I16LE) == true)
retVal = JVX_DATAFORMAT_16BIT_LE;
else if (H5Tequal(tp, H5T_STD_I32LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I32LE) == true)
retVal = JVX_DATAFORMAT_32BIT_LE;
else if (H5Tequal(tp, H5T_STD_I64LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I64LE) == true)
retVal = JVX_DATAFORMAT_64BIT_LE;
else if (H5Tequal(tp, H5T_STD_U8LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U8LE) == true)
retVal = JVX_DATAFORMAT_U8BIT;
else if (H5Tequal(tp, H5T_STD_U16LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U16LE) == true)
retVal = JVX_DATAFORMAT_U16BIT_LE;
else if (H5Tequal(tp, H5T_STD_U32LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U32LE) == true)
retVal = JVX_DATAFORMAT_U32BIT_LE;
else if (H5Tequal(tp, H5T_STD_U64LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U64LE) == true)
retVal = JVX_DATAFORMAT_U64BIT_LE;
break;

case H5T_FLOAT:
if (H5Tequal(tp, H5T_IEEE_F32LE) == TRUE)
if (H5Tequal(tp, H5T_IEEE_F32LE) == true)
{
#ifdef JVX_DATA_FORMAT_DOUBLE
retVal = JVX_DATAFORMAT_FLOAT;
#else
retVal = JVX_DATAFORMAT_DATA;
#endif
}
else if (H5Tequal(tp, H5T_IEEE_F64LE) == TRUE)
else if (H5Tequal(tp, H5T_IEEE_F64LE) == true)
{
#ifdef JVX_DATA_FORMAT_DOUBLE
retVal = JVX_DATAFORMAT_DATA;
Expand All @@ -83,57 +83,57 @@ printInfoDSet(hid_t tp, hid_t space)

switch (ctp) {
case H5T_INTEGER:
if (H5Tequal(tp, H5T_STD_I8BE) == TRUE)
if (H5Tequal(tp, H5T_STD_I8BE) == true)
std::cout << "H5T_STD_I8BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I8LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I8LE) == true)
std::cout << "H5T_STD_I8LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I16BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I16BE) == true)
std::cout << "H5T_STD_I16BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I16LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I16LE) == true)
std::cout << "H5T_STD_I16LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I32BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I32BE) == true)
std::cout << "H5T_STD_I32BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I32LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I32LE) == true)
std::cout << "H5T_STD_I32LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I64BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I64BE) == true)
std::cout << "H5T_STD_I64BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_I64LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_I64LE) == true)
std::cout << "H5T_STD_I64LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U8BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U8BE) == true)
std::cout << "H5T_STD_U8BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U8LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U8LE) == true)
std::cout << "H5T_STD_U8LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U16BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U16BE) == true)
std::cout << "H5T_STD_U16BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U16LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U16LE) == true)
std::cout << "H5T_STD_U16LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U32BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U32BE) == true)
std::cout << "H5T_STD_U32BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U32LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U32LE) == true)
std::cout << "H5T_STD_U32LE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U64BE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U64BE) == true)
std::cout << "H5T_STD_U64BE" << std::endl;
else if (H5Tequal(tp, H5T_STD_U64LE) == TRUE)
else if (H5Tequal(tp, H5T_STD_U64LE) == true)
std::cout << "H5T_STD_U64LE" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_SCHAR) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_SCHAR) == true)
std::cout << "H5T_NATIVE_SCHAR" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_UCHAR) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_UCHAR) == true)
std::cout << "H5T_NATIVE_UCHAR" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_SHORT) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_SHORT) == true)
std::cout << "H5T_NATIVE_SHORT" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_USHORT) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_USHORT) == true)
std::cout << "H5T_NATIVE_USHORT" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_INT) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_INT) == true)
std::cout << "H5T_NATIVE_INT" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_UINT) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_UINT) == true)
std::cout << "H5T_NATIVE_UINT" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_LONG) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_LONG) == true)
std::cout << "H5T_NATIVE_LONG" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_ULONG) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_ULONG) == true)
std::cout << "H5T_NATIVE_ULONG" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_LLONG) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_LLONG) == true)
std::cout << "H5T_NATIVE_LLONG" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_ULLONG) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_ULLONG) == true)
std::cout << "H5T_NATIVE_ULLONG" << std::endl;
else {
std::cout << "H5T_NATIVE_INT_UNKNWON-" << std::flush;
Expand Down Expand Up @@ -176,21 +176,21 @@ printInfoDSet(hid_t tp, hid_t space)
break;

case H5T_FLOAT:
if (H5Tequal(tp, H5T_IEEE_F32BE) == TRUE)
if (H5Tequal(tp, H5T_IEEE_F32BE) == true)
std::cout << "H5T_IEEE_F32BE" << std::endl;
else if (H5Tequal(tp, H5T_IEEE_F32LE) == TRUE)
else if (H5Tequal(tp, H5T_IEEE_F32LE) == true)
std::cout << "H5T_IEEE_F32LE" << std::endl;
else if (H5Tequal(tp, H5T_IEEE_F64BE) == TRUE)
else if (H5Tequal(tp, H5T_IEEE_F64BE) == true)
std::cout << "H5T_IEEE_F64BE" << std::endl;
else if (H5Tequal(tp, H5T_IEEE_F64LE) == TRUE)
else if (H5Tequal(tp, H5T_IEEE_F64LE) == true)
std::cout << "H5T_IEEE_F64LE" << std::endl;
else if (H5Tequal(tp, H5T_VAX_F32) == TRUE)
else if (H5Tequal(tp, H5T_VAX_F32) == true)
std::cout << "H5T_VAX_F32" << std::endl;
else if (H5Tequal(tp, H5T_VAX_F64) == TRUE)
else if (H5Tequal(tp, H5T_VAX_F64) == true)
std::cout << "H5T_VAX_F64" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_FLOAT) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_FLOAT) == true)
std::cout << "H5T_NATIVE_FLOAT" << std::endl;
else if (H5Tequal(tp, H5T_NATIVE_DOUBLE) == TRUE)
else if (H5Tequal(tp, H5T_NATIVE_DOUBLE) == true)
std::cout << "H5T_NATIVE_DOUBLE" << std::endl;
else {
std::cout << "H5T_NATIVE_UNKNWON" << std::endl;
Expand Down Expand Up @@ -359,15 +359,20 @@ CayfHdf5Io::CayfHdf5Io()
CayfHdf5Io::~CayfHdf5Io()
{
clearToc();
JVX_SAFE_DELETE_OBJECT(hdf5Private);

// We have used a void pointer for the private struct to prevent that we need to include
// the header in the heaer file
CayfHdf5O_prv* deleteMe = (CayfHdf5O_prv*)hdf5Private;
JVX_SAFE_DELETE_OBJECT(deleteMe);
hdf5Private = nullptr;
}

void
CayfHdf5Io::clearToc()
{
while (1)
{
auto& elm = toc.begin();
auto elm = toc.begin();
if (elm == toc.end())
{
break;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,6 @@ endif(DEFINED JVX_SDK_PATH)
set(PROJECT_NAME jvx-qt-measure-ir-1dev-app-lib)
include(${JVX_CMAKE_DIR}/common_local_lib_head.cmake)

# Decide which host library to link with
set(JVX_LINK_WITH_AUDIO_HOST TRUE)

# Add mainWidget and other ui files
set(LOCAL_UI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/../common/uisrc/myMainWidget.ui
Expand Down Expand Up @@ -109,32 +106,8 @@ if(${JVX_OS} MATCHES "windows")
jvxTMswText2Speech_static)
endif()

# Link against either audio host lib or develop host lib
if(JVX_LINK_WITH_AUDIO_HOST)

# Link with audio host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLAudioHost__algostatic_static
)

# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.audiohost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()
else()

# Link with develop host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLDevelopHost_static
)
# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.develophost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()

endif()
# The audio lib can not be included here: we need to include it BEFORE
# the reference to this lib in the application

## ======================================================================
## The audio libs
Expand All @@ -144,7 +117,8 @@ include(${JVX_CMAKE_DIR}/packages/cmake-audio-components.cmake)

# Some compile defines
#set(LOCAL_COMPILE_DEFINITIONS "JVX_ADD_HOST_WEBSERVER;JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_NO_SEQUENCER;JVX_NO_RTVIEWER;JVX_NO_MESSAGES")
set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_ADD_WIDGET_WRAPPER")
# set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_ADD_WIDGET_WRAPPER")
set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_ADD_WIDGET_WRAPPER")

# Macos x specific configurations
if(JVX_OS MATCHES "macosx")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
if(DEFINED JVX_SDK_PATH)
include(${JVX_SDK_PATH}/cmake/standalone.cmake)
endif(DEFINED JVX_SDK_PATH)

# Some common include files
set(PROJECT_NAME jvx-qt-measure-ir-2dev-app-lib)
include(${JVX_CMAKE_DIR}/common_local_lib_head.cmake)

# Decide which host library to link with
set(JVX_LINK_WITH_AUDIO_HOST TRUE)

# Add mainWidget and other ui files
set(LOCAL_UI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/../common/uisrc/myMainWidget.ui
Expand Down Expand Up @@ -121,33 +114,6 @@ if(${JVX_OS} MATCHES "windows")
jvxTMswText2Speech_static)
endif()

# Link against either audio host lib or develop host lib
if(JVX_LINK_WITH_AUDIO_HOST)

# Link with audio host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLAudioHost__algostatic_static
)

# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.audiohost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()
else()

# Link with develop host
set(LOCAL_LIBS ${LOCAL_LIBS}
jvxLDevelopHost_static
)
# In case of standalone builds, we need to pull in some other libraries
if(DEFINED JVX_SDK_PATH)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.develophost.cmake)
include(${JVX_CMAKE_DIR}/cmake-sdk/cmake-lib-packages.network.cmake)
endif()

endif()

## ======================================================================
## The audio libs
# Pull in all audio components
Expand All @@ -156,7 +122,8 @@ include(${JVX_CMAKE_DIR}/packages/cmake-audio-components.cmake)

# Some compile defines
#set(LOCAL_COMPILE_DEFINITIONS "JVX_ADD_HOST_WEBSERVER;JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_NO_SEQUENCER;JVX_NO_RTVIEWER;JVX_NO_MESSAGES")
set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_ADD_WIDGET_WRAPPER")
# set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_PROJECT_NAMESPACE=JVX_MY_HOST;JVX_ADD_WIDGET_WRAPPER")
set(LOCAL_COMPILE_DEFINITIONS "${LOCAL_COMPILE_DEFINITIONS};JVX_ADD_WIDGET_WRAPPER")

# Macos x specific configurations
if(JVX_OS MATCHES "macosx")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ class jvxLinkDataAttachedLostFrames: public jvxLinkDataAttachedBuffer
};

jvxSize numLost = 0;
virtual jvxHandle* if_specific(jvxLinkDataAttachedType tpArg)
virtual jvxHandle* if_specific(jvxLinkDataAttachedType tpArg) override
{
if(tpArg == JVX_LINKDATA_ATTACHED_REPORT_UPDATE_NUMBER_LOST_FRAMES)
{
Expand Down
Loading

0 comments on commit 2076692

Please sign in to comment.