Skip to content

Commit a34bddc

Browse files
gkv311bugmaster
authored andcommitted
0032315: Configuration, CMake - fix building Draw Harness plugins as static libraries
DPLUGIN() macros no more defines exported function PLUGINFACTORY when building static libraries. DRAWEXE executable now pre-loads a set of plugins when building static libraries. dversion - added WebAssembly info.
1 parent d0d9e93 commit a34bddc

File tree

16 files changed

+548
-345
lines changed

16 files changed

+548
-345
lines changed

.gitattributes

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
.gitattributes eol=lf
22
.gitignore eol=lf
33
*.txt eol=lf
4+
*.htm eol=lf
5+
*.html eol=lf
46
*.h eol=lf
57
*.c eol=lf
68
*.inl eol=lf
@@ -29,6 +31,7 @@
2931
*.xib eol=lf
3032
*.plist eol=lf
3133
*.java eol=lf
34+
*.js eol=lf
3235
*.igs eol=lf
3336
*.iges eol=lf
3437
*.stp eol=lf
@@ -44,6 +47,7 @@
4447
FILES eol=lf
4548
PACKAGES eol=lf
4649
EXTERNLIB eol=lf
50+
EXTERNLIB_STATIC eol=lf
4751
UDLIST eol=lf
4852
tests/* eol=lf
4953
tests/*/* eol=lf

CMakeLists.txt

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -447,12 +447,6 @@ foreach (OCCT_MODULE ${OCCT_MODULES})
447447
endif()
448448
endforeach()
449449

450-
# DRAWEXE excluded when library build is static
451-
if (NOT BUILD_SHARED_LIBS)
452-
list (REMOVE_ITEM BUILD_TOOLKITS DRAWEXE)
453-
message (STATUS "Info: DRAWEXE is not included due to ${BUILD_LIBRARY_TYPE} build library type")
454-
endif()
455-
456450
# accumulate all used toolkits
457451
list (REMOVE_DUPLICATES BUILD_TOOLKITS)
458452
set (RAW_BUILD_TOOLKITS)

adm/cmake/occt_csf.cmake

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@ else()
118118
OCCT_CHECK_AND_UNSET (OpenGlLibs_LIB)
119119
endif()
120120

121+
elseif (EMSCRIPTEN)
122+
set (CSF_ThreadLibs "pthread rt stdc++")
123+
set (CSF_OpenGlesLibs "EGL GLESv2")
124+
set (CSF_dl "dl")
121125
elseif (ANDROID)
122126
set (CSF_ThreadLibs "c")
123127
set (CSF_OpenGlesLibs "EGL GLESv2")

adm/cmake/occt_toolkit.cmake

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ if ("${OCCT_TOOLKITS_NAME_SUFFIX}" STREQUAL "")
2222
set (OCCT_TOOLKITS_NAME_SUFFIX "TOOLKITS")
2323
endif()
2424

25-
# parce PACKAGES file
25+
# parse PACKAGES file
2626
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/PACKAGES" USED_PACKAGES)
2727
if ("${USED_PACKAGES}" STREQUAL "")
2828
set (USED_PACKAGES ${PROJECT_NAME})
@@ -39,7 +39,7 @@ set (PRECOMPILED_DEFS)
3939

4040
if (NOT BUILD_SHARED_LIBS)
4141
list (APPEND PRECOMPILED_DEFS "-DOCCT_NO_PLUGINS")
42-
if (WIN32)
42+
if (WIN32 AND NOT EXECUTABLE_PROJECT)
4343
list (APPEND PRECOMPILED_DEFS "-DOCCT_STATIC_BUILD")
4444
endif()
4545
endif()
@@ -228,6 +228,10 @@ if (EXECUTABLE_PROJECT)
228228

229229
install (TARGETS ${PROJECT_NAME}
230230
DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
231+
232+
if (EMSCRIPTEN)
233+
install(FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.wasm DESTINATION "${INSTALL_DIR_BIN}/${OCCT_INSTALL_BIN_LETTER}")
234+
endif()
231235
else()
232236
add_library (${PROJECT_NAME} ${USED_SRCFILES} ${USED_INCFILES} ${USED_RCFILE} ${RESOURCE_FILES} ${${PROJECT_NAME}_MOC_FILES})
233237

@@ -283,8 +287,12 @@ endif()
283287
set (USED_TOOLKITS_BY_CURRENT_PROJECT)
284288
set (USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT)
285289

286-
# parce EXTERNLIB file
287-
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/EXTERNLIB" USED_EXTERNLIB_AND_TOOLKITS)
290+
# parse EXTERNLIB file
291+
if (CUSTOM_EXTERNLIB)
292+
set (USED_EXTERNLIB_AND_TOOLKITS ${CUSTOM_EXTERNLIB})
293+
else()
294+
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/EXTERNLIB" USED_EXTERNLIB_AND_TOOLKITS)
295+
endif()
288296
foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
289297
string (REGEX MATCH "^ *#" COMMENT_FOUND ${USED_ITEM})
290298
if (NOT COMMENT_FOUND)
@@ -383,7 +391,7 @@ else()
383391
endif()
384392
endif()
385393

386-
if (BUILD_SHARED_LIBS)
394+
if (BUILD_SHARED_LIBS OR EXECUTABLE_PROJECT)
387395
if(IS_VTK_9XX)
388396
string (REGEX REPLACE "vtk" "VTK::" USED_TOOLKITS_BY_CURRENT_PROJECT "${USED_TOOLKITS_BY_CURRENT_PROJECT}")
389397
endif()

0 commit comments

Comments
 (0)