Skip to content

Commit

Permalink
Changed link-frontend library to allow eak symbol magic in case of gcc
Browse files Browse the repository at this point in the history
  • Loading branch information
hkbinaurics committed Mar 20, 2024
1 parent db811f6 commit af63f50
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 9 deletions.
25 changes: 17 additions & 8 deletions cmake/common_local_lib_foot.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -215,14 +215,23 @@ endif()
###
if(BUILD_STATIC)

message("Build STATIC Library ${JVX_TARGET_NAME_STATIC}")
if(CUDA_SOURCES)
add_library(${JVX_TARGET_NAME_STATIC} STATIC ${LOCAL_SOURCES} ${CUDA_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})

else()
add_library(${JVX_TARGET_NAME_STATIC} STATIC ${LOCAL_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})
endif()

if(CREATE_OBJECT_LIBRARY)

message("Build OBJECT Library ${JVX_TARGET_NAME_STATIC}")
if(CUDA_SOURCES)
add_library(${JVX_TARGET_NAME_STATIC} OBJECT ${LOCAL_SOURCES} ${CUDA_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})
else()
add_library(${JVX_TARGET_NAME_STATIC} OBJECT ${LOCAL_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})
endif()
else()
message("Build STATIC Library ${JVX_TARGET_NAME_STATIC}")
if(CUDA_SOURCES)
add_library(${JVX_TARGET_NAME_STATIC} STATIC ${LOCAL_SOURCES} ${CUDA_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})
else()
add_library(${JVX_TARGET_NAME_STATIC} STATIC ${LOCAL_SOURCES} ${ADDITIONAL_SOURCES} ${GENERATED_FILES} ${LOCAL_PCG_FILES} ${PCG_SOURCES} ${LOCAL_MCG_FILES} ${QT_RESOURCES} ${LOCAL_UI_SOURCES})
endif()
endif()

# Copy variable used by both BUILD_STATIC and BUILD_SHARED but modified in this block
set(ADDITIONAL_COMPILE_DEFINITIONS_STATIC "${ADDITIONAL_COMPILE_DEFINITIONS}")

Expand Down
3 changes: 2 additions & 1 deletion cmake/hostlink.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,9 @@
jvxLWebConsoleTools_static
)

# We need to add this library with special magic to override the weak symbols in GCC
if(JVX_LINK_WITH_CONSOLE_HOST_FRONTEND_BACKEND_LIB)
set(LOCAL_LIBS ${LOCAL_LIBS} jvx-link-frontend_static)
set(LOCAL_LIBS ${LOCAL_LIBS} ${WHOLE_ARCHIVE} jvx-link-frontend_static ${NO_WHOLE_ARCHIVE})
endif()

# In case of standalone builds, we need to pull in some other libraries
Expand Down
1 change: 1 addition & 0 deletions sources/jvxLibraries/jvx-link-frontend/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,5 +27,6 @@ set(LOCAL_LIBS ${LOCAL_LIBS}
)

set(BUILD_STATIC TRUE)
set(CREATE_OBJECT_LIBRARY TRUE)

include(${JVX_CMAKE_DIR}/common_local_lib_foot.cmake)

0 comments on commit af63f50

Please sign in to comment.