Revision: 77213
          http://sourceforge.net/p/brlcad/code/77213
Author:   starseeker
Date:     2020-09-24 16:40:19 +0000 (Thu, 24 Sep 2020)
Log Message:
-----------
Add the ability to optionally disable building the components needing STEPcode.

Modified Paths:
--------------
    brlcad/trunk/CMakeLists.txt
    brlcad/trunk/db/CMakeLists.txt
    brlcad/trunk/regress/nurbs/CMakeLists.txt
    brlcad/trunk/src/conv/step/CMakeLists.txt
    brlcad/trunk/src/conv/step/g-step/CMakeLists.txt
    brlcad/trunk/src/conv/step/step-g/CMakeLists.txt
    brlcad/trunk/src/conv/step/util/CMakeLists.txt
    brlcad/trunk/src/other/CMakeLists.txt

Modified: brlcad/trunk/CMakeLists.txt
===================================================================
--- brlcad/trunk/CMakeLists.txt 2020-09-24 16:16:45 UTC (rev 77212)
+++ brlcad/trunk/CMakeLists.txt 2020-09-24 16:40:19 UTC (rev 77213)
@@ -1384,6 +1384,10 @@
 option(BRLCAD_ENABLE_GDAL "Enable features requiring the Geospatial Data 
Abstraction Library" ON)
 mark_as_advanced(BRLCAD_ENABLE_GDAL)
 
+# Enable features requiring STEPcode library
+option(BRLCAD_ENABLE_STEP "Enable features requiring the STEP support 
libraries" ON)
+mark_as_advanced(BRLCAD_ENABLE_STEP)
+
 # Enable features requiring Qt
 option(BRLCAD_ENABLE_QT "Enable features requiring Qt" OFF)
 mark_as_advanced(BRLCAD_ENABLE_QT)

Modified: brlcad/trunk/db/CMakeLists.txt
===================================================================
--- brlcad/trunk/db/CMakeLists.txt      2020-09-24 16:16:45 UTC (rev 77212)
+++ brlcad/trunk/db/CMakeLists.txt      2020-09-24 16:40:19 UTC (rev 77213)
@@ -97,25 +97,31 @@
   endif(${MODEL_TYPE} STREQUAL "fg4")
 
   if(${MODEL_TYPE} STREQUAL "stp")
-    add_custom_command(
-      OUTPUT ${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file}
-      COMMAND step-g -O ${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file} 
${CMAKE_CURRENT_SOURCE_DIR}/${in_model} > ${log_file} 2>&1
-      DEPENDS step-g ${CMAKE_CURRENT_SOURCE_DIR}/${in_model}
-      )
+    if (BRLCAD_ENABLE_STEP)
+      add_custom_command(
+       OUTPUT ${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file}
+       COMMAND step-g -O ${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file} 
${CMAKE_CURRENT_SOURCE_DIR}/${in_model} > ${log_file} 2>&1
+       DEPENDS step-g ${CMAKE_CURRENT_SOURCE_DIR}/${in_model}
+       )
+    else (BRLCAD_ENABLE_STEP)
+      CMAKEFILES(${CMAKE_CURRENT_SOURCE_DIR}/${in_model})
+    endif (BRLCAD_ENABLE_STEP)
   endif(${MODEL_TYPE} STREQUAL "stp")
 
   if(NOT ${MODEL_TYPE} STREQUAL "asc" OR BRLCAD_ENABLE_TCL)
-    add_custom_target(${in_model_root}.g ALL DEPENDS 
${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file})
-    set_target_properties(${in_model_root}.g PROPERTIES FOLDER "${folder}")
+    if(NOT ${MODEL_TYPE} STREQUAL "stp" OR BRLCAD_ENABLE_STEP)
+      add_custom_target(${in_model_root}.g ALL DEPENDS 
${CMAKE_CURRENT_BUILD_DIR_SCRIPT}/${output_file})
+      set_target_properties(${in_model_root}.g PROPERTIES FOLDER "${folder}")
 
-    # Install logic
-    if(BRLCAD_INSTALL_EXAMPLE_GEOMETRY)
-      install(FILES ${CMAKE_CURRENT_BUILD_DIR_INSTALL}/${output_file} 
DESTINATION ${DATA_DIR}/${rel_dir})
-    endif(BRLCAD_INSTALL_EXAMPLE_GEOMETRY)
+      # Install logic
+      if(BRLCAD_INSTALL_EXAMPLE_GEOMETRY)
+       install(FILES ${CMAKE_CURRENT_BUILD_DIR_INSTALL}/${output_file} 
DESTINATION ${DATA_DIR}/${rel_dir})
+      endif(BRLCAD_INSTALL_EXAMPLE_GEOMETRY)
 
-    # Clean-up
-    set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES 
"${log_file}")
-    DISTCLEAN("${log_file}")
+      # Clean-up
+      set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES 
"${log_file}")
+      DISTCLEAN("${log_file}")
+    endif(NOT ${MODEL_TYPE} STREQUAL "stp" OR BRLCAD_ENABLE_STEP)
   endif(NOT ${MODEL_TYPE} STREQUAL "asc" OR BRLCAD_ENABLE_TCL)
 
 endfunction(ADD_G_TARGET in_model folder)

Modified: brlcad/trunk/regress/nurbs/CMakeLists.txt
===================================================================
--- brlcad/trunk/regress/nurbs/CMakeLists.txt   2020-09-24 16:16:45 UTC (rev 
77212)
+++ brlcad/trunk/regress/nurbs/CMakeLists.txt   2020-09-24 16:40:19 UTC (rev 
77213)
@@ -1,13 +1,15 @@
 # All NURBS ray tests will use the same template script
 set(TSCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/regress-nurbs-test.cmake.in")
 
-set(NHIT_NAME "NIST03_MISS_01")
-set(NHIT_OPTS "-M -b")
-set(NHIT_GFILE "${DATA_DIR}/db/nist/NIST_MBE_PMI_3.g")
-set(NHIT_ARGS "Document -114.61944548140064626 -127.49462006675899772 
-134.83948901109894791 35 25")
-BRLCAD_REGRESSION_TEST(regress-nurbs_${NHIT_NAME} 
"analyze_nhit;NIST_MBE_PMI_3.g" TEST_SCRIPT "${TSCRIPT}" EXEC analyze_nhit)
-set_target_properties(regress-nurbs_${NHIT_NAME} PROPERTIES FOLDER "BRL-CAD 
Regression Tests/NURBS")
-DISTCLEAN(${CMAKE_CURRENT_BINARY_DIR}/regress-nurbs_${NHIT_NAME}.log)
+if (TARGET NIST_MBE_PMI_3.g)
+  set(NHIT_NAME "NIST03_MISS_01")
+  set(NHIT_OPTS "-M -b")
+  set(NHIT_GFILE "${DATA_DIR}/db/nist/NIST_MBE_PMI_3.g")
+  set(NHIT_ARGS "Document -114.61944548140064626 -127.49462006675899772 
-134.83948901109894791 35 25")
+  BRLCAD_REGRESSION_TEST(regress-nurbs_${NHIT_NAME} 
"analyze_nhit;NIST_MBE_PMI_3.g" TEST_SCRIPT "${TSCRIPT}" EXEC analyze_nhit)
+  set_target_properties(regress-nurbs_${NHIT_NAME} PROPERTIES FOLDER "BRL-CAD 
Regression Tests/NURBS")
+  DISTCLEAN(${CMAKE_CURRENT_BINARY_DIR}/regress-nurbs_${NHIT_NAME}.log)
+endif (TARGET NIST_MBE_PMI_3.g)
 
 
 set(NHIT_NAME "PLATE_MODE_CYL_HIT_01")

Modified: brlcad/trunk/src/conv/step/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/conv/step/CMakeLists.txt   2020-09-24 16:16:45 UTC (rev 
77212)
+++ brlcad/trunk/src/conv/step/CMakeLists.txt   2020-09-24 16:40:19 UTC (rev 
77213)
@@ -36,58 +36,60 @@
 BRLCAD_INCLUDE_DIRS(STEP_INCLUDE_DIRS)
 
 macro(GENERATE_SCHEMA_INPUTS SCHEMA_FILE TARGET_SUFFIX)
-  # This Schema determines which version of STEP the command will support
-  # TODO - see if there is some way to automatically support multiple versions
-  # read the schema name from a line like 'SCHEMA AUTOMOTIVE_DESIGN;'
-  file(STRINGS ${SCHEMA_FILE} SCHEMA_STATEMENT LIMIT_COUNT 1 REGEX "SCHEMA .*")
-  string(REGEX REPLACE "^SCHEMA \(.*\)\;$" "\\1" SCHEMA_N ${SCHEMA_STATEMENT} )
-  string(TOUPPER ${SCHEMA_N} SCHEMA_NAME) #exp2cxx always uses upper case for 
file names
+  if (BRLCAD_ENABLE_STEP)
+    # This Schema determines which version of STEP the command will support
+    # TODO - see if there is some way to automatically support multiple 
versions
+    # read the schema name from a line like 'SCHEMA AUTOMOTIVE_DESIGN;'
+    file(STRINGS ${SCHEMA_FILE} SCHEMA_STATEMENT LIMIT_COUNT 1 REGEX "SCHEMA 
.*")
+    string(REGEX REPLACE "^SCHEMA \(.*\)\;$" "\\1" SCHEMA_N 
${SCHEMA_STATEMENT} )
+    string(TOUPPER ${SCHEMA_N} SCHEMA_NAME) #exp2cxx always uses upper case 
for file names
 
-  # Because SCHEMA_OUT_DIR is the working directory for exp2cxx, it must be
-  # created at configure time and be present when exp2cxx is run
-  set(SCHEMA_OUT_DIR 
${CMAKE_CURRENT_BINARY_DIR}/${SCHEMA_NAME}_${TARGET_SUFFIX})
-  set(${TARGET_SUFFIX}_SCHEMA_OUT_DIR ${SCHEMA_OUT_DIR})
-  file(MAKE_DIRECTORY ${SCHEMA_OUT_DIR})
-  DISTCLEAN(${SCHEMA_OUT_DIR})
+    # Because SCHEMA_OUT_DIR is the working directory for exp2cxx, it must be
+    # created at configure time and be present when exp2cxx is run
+    set(SCHEMA_OUT_DIR 
${CMAKE_CURRENT_BINARY_DIR}/${SCHEMA_NAME}_${TARGET_SUFFIX})
+    set(${TARGET_SUFFIX}_SCHEMA_OUT_DIR ${SCHEMA_OUT_DIR})
+    file(MAKE_DIRECTORY ${SCHEMA_OUT_DIR})
+    DISTCLEAN(${SCHEMA_OUT_DIR})
 
-  # These files are the standard exp2cxx outputs that need to be compiled.
-  set(express_srcs
-    ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.cc
-    ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.init.cc
-    ${SCHEMA_OUT_DIR}/SdaiAll.cc
-    ${SCHEMA_OUT_DIR}/compstructs.cc
-    ${SCHEMA_OUT_DIR}/schema.cc
-    )
+    # These files are the standard exp2cxx outputs that need to be compiled.
+    set(express_srcs
+      ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.cc
+      ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.init.cc
+      ${SCHEMA_OUT_DIR}/SdaiAll.cc
+      ${SCHEMA_OUT_DIR}/compstructs.cc
+      ${SCHEMA_OUT_DIR}/schema.cc
+      )
 
-  # For the subdirectory add_custom_command definitions, need the generated
-  # headers as well.
-  set(EXPRESS_OUTPUT
-    ${express_srcs}
-    ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.h
-    ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}Helpers.h
-    ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}Names.h
-    ${SCHEMA_OUT_DIR}/Sdaiclasses.h
-    ${SCHEMA_OUT_DIR}/schema.h
-    )
+    # For the subdirectory add_custom_command definitions, need the generated
+    # headers as well.
+    set(EXPRESS_OUTPUT
+      ${express_srcs}
+      ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}.h
+      ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}Helpers.h
+      ${SCHEMA_OUT_DIR}/Sdai${SCHEMA_NAME}Names.h
+      ${SCHEMA_OUT_DIR}/Sdaiclasses.h
+      ${SCHEMA_OUT_DIR}/schema.h
+      )
 
-  add_custom_command(OUTPUT ${EXPRESS_OUTPUT} 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
-    COMMAND ${EXP2CXX_EXEC} ARGS ${SCHEMA_FILE} > 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.log 2>&1
-    COMMAND ${CMAKE_COMMAND} -E touch 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
-    DEPENDS ${SCHEMA_FILE} ${EXP2CXX_EXECUTABLE_TARGET}
-    WORKING_DIRECTORY ${SCHEMA_OUT_DIR}
-    COMMENT "Generating C++ code to express ${SCHEMA_NAME}..."
-    VERBATIM)
+    add_custom_command(OUTPUT ${EXPRESS_OUTPUT} 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
+      COMMAND ${EXP2CXX_EXEC} ARGS ${SCHEMA_FILE} > 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.log 2>&1
+      COMMAND ${CMAKE_COMMAND} -E touch 
${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
+      DEPENDS ${SCHEMA_FILE} ${EXP2CXX_EXECUTABLE_TARGET}
+      WORKING_DIRECTORY ${SCHEMA_OUT_DIR}
+      COMMENT "Generating C++ code to express ${SCHEMA_NAME}..."
+      VERBATIM)
 
-  add_custom_target(step-express-${SCHEMA_NAME}-${TARGET_SUFFIX}
-    DEPENDS ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done)
-  set_target_properties(step-express-${SCHEMA_NAME}-${TARGET_SUFFIX} 
PROPERTIES FOLDER "Compilation Utilities")
+    add_custom_target(step-express-${SCHEMA_NAME}-${TARGET_SUFFIX}
+      DEPENDS ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done)
+    set_target_properties(step-express-${SCHEMA_NAME}-${TARGET_SUFFIX} 
PROPERTIES FOLDER "Compilation Utilities")
 
-  set(clean_files
-    ${EXPRESS_OUTPUT}
-    ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
-    ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.log
-    )
-  set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES 
"${clean_files}")
+    set(clean_files
+      ${EXPRESS_OUTPUT}
+      ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.done
+      ${SCHEMA_OUT_DIR}/step_express_${SCHEMA_NAME}.log
+      )
+    set_property(DIRECTORY APPEND PROPERTY ADDITIONAL_MAKE_CLEAN_FILES 
"${clean_files}")
+  endif (BRLCAD_ENABLE_STEP)
 endmacro(GENERATE_SCHEMA_INPUTS SCHEMA_FILE)
 
 # AP203

Modified: brlcad/trunk/src/conv/step/g-step/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/conv/step/g-step/CMakeLists.txt    2020-09-24 16:16:45 UTC 
(rev 77212)
+++ brlcad/trunk/src/conv/step/g-step/CMakeLists.txt    2020-09-24 16:40:19 UTC 
(rev 77213)
@@ -26,39 +26,41 @@
   Trees.cpp
   g-step.cpp
   )
+CMAKEFILES(${gstep_SOURCES})
 
-set(gstep_LIBS
-  libwdb
-  librt
-  libbrep
-  libbn
-  libbu
-  steputils
-  stepeditor
-  stepdai
-  stepcore
-  ${OPENNURBS_LIBRARIES}
-  )
-list(APPEND gstep_LIBS ${gstep_LIBS})
+if (BRLCAD_ENABLE_STEP)
+  set(gstep_LIBS
+    libwdb
+    librt
+    libbrep
+    libbn
+    libbu
+    steputils
+    stepeditor
+    stepdai
+    stepcore
+    ${OPENNURBS_LIBRARIES}
+    )
 
-BRLCAD_ADDEXEC(g-step "${gstep_SOURCES}" "${gstep_LIBS}" NO_STRICT)
-add_dependencies(g-step step-express-${SCHEMA_NAME}-gstep)
-set_property(TARGET g-step APPEND PROPERTY INCLUDE_DIRECTORIES 
"${gstep_SCHEMA_OUT_DIR}")
+  BRLCAD_ADDEXEC(g-step "${gstep_SOURCES}" "${gstep_LIBS}" NO_STRICT)
+  add_dependencies(g-step step-express-${SCHEMA_NAME}-gstep)
+  set_property(TARGET g-step APPEND PROPERTY INCLUDE_DIRECTORIES 
"${gstep_SCHEMA_OUT_DIR}")
 
-if (HIDE_INTERNAL_SYMBOLS)
-  set(gstep_IMPORTS
-    BU_DLL_IMPORTS
-    BN_DLL_IMPORTS
-    RT_DLL_IMPORTS
-    WDB_DLL_IMPORTS
-    SC_CORE_DLL_IMPORTS
-    SC_DAI_DLL_IMPORTS
-    SC_EDITOR_DLL_IMPORTS
-    SC_UTILS_DLL_IMPORTS
-    )
-  list(APPEND gstep_IMPORTS ${gstep_IMPORTS})
-  set_property(TARGET g-step APPEND PROPERTY COMPILE_DEFINITIONS 
"${gstep_IMPORTS}")
-endif (HIDE_INTERNAL_SYMBOLS)
+  if (HIDE_INTERNAL_SYMBOLS)
+    set(gstep_IMPORTS
+      BU_DLL_IMPORTS
+      BN_DLL_IMPORTS
+      RT_DLL_IMPORTS
+      WDB_DLL_IMPORTS
+      SC_CORE_DLL_IMPORTS
+      SC_DAI_DLL_IMPORTS
+      SC_EDITOR_DLL_IMPORTS
+      SC_UTILS_DLL_IMPORTS
+      )
+    list(APPEND gstep_IMPORTS ${gstep_IMPORTS})
+    set_property(TARGET g-step APPEND PROPERTY COMPILE_DEFINITIONS 
"${gstep_IMPORTS}")
+  endif (HIDE_INTERNAL_SYMBOLS)
+endif (BRLCAD_ENABLE_STEP)
 
 set(IGNORE_FILES
   CMakeLists.txt

Modified: brlcad/trunk/src/conv/step/step-g/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/conv/step/step-g/CMakeLists.txt    2020-09-24 16:16:45 UTC 
(rev 77212)
+++ brlcad/trunk/src/conv/step/step-g/CMakeLists.txt    2020-09-24 16:40:19 UTC 
(rev 77213)
@@ -233,6 +233,7 @@
   VolumeUnit.cpp
   step-g.cpp
   )
+CMAKEFILES(${stepg_SOURCES})
 
 set(stepg_HDRS
   AdvancedBrepShapeRepresentation.h
@@ -452,29 +453,30 @@
   )
 CMAKEFILES(${stepg_HDRS})
 
-set(stepg_LIBS
-  libwdb
-  librt
-  libbu
-  libbrep
-  steputils
-  stepeditor
-  stepdai
-  stepcore
-  ${OPENNURBS_LIBRARIES}
-  )
-list(APPEND stepg_LIBS ${stepg_LIBS})
+if (BRLCAD_ENABLE_STEP)
+  set(stepg_LIBS
+    libwdb
+    librt
+    libbu
+    libbrep
+    steputils
+    stepeditor
+    stepdai
+    stepcore
+    ${OPENNURBS_LIBRARIES}
+    )
 
-BRLCAD_ADDEXEC(step-g "${stepg_SOURCES}" "${stepg_LIBS}" NO_STRICT)
-add_dependencies(step-g step-express-${SCHEMA_NAME}-stepg)
-set_property(TARGET step-g APPEND PROPERTY INCLUDE_DIRECTORIES 
"${stepg_SCHEMA_OUT_DIR}")
+  BRLCAD_ADDEXEC(step-g "${stepg_SOURCES}" "${stepg_LIBS}" NO_STRICT)
+  add_dependencies(step-g step-express-${SCHEMA_NAME}-stepg)
+  set_property(TARGET step-g APPEND PROPERTY INCLUDE_DIRECTORIES 
"${stepg_SCHEMA_OUT_DIR}")
 
-if(HIDE_INTERNAL_SYMBOLS)
-  set(SCIMPORTS SC_CORE_DLL_IMPORTS SC_DAI_DLL_IMPORTS SC_EDITOR_DLL_IMPORTS 
SC_UTILS_DLL_IMPORTS ON_DLL_IMPORTS)
-  foreach(scp ${SCIMPORTS})
-    set_property(TARGET step-g APPEND PROPERTY COMPILE_DEFINITIONS "${scp}")
-  endforeach(scp ${SCIMPORTS})
-endif(HIDE_INTERNAL_SYMBOLS)
+  if(HIDE_INTERNAL_SYMBOLS)
+    set(SCIMPORTS SC_CORE_DLL_IMPORTS SC_DAI_DLL_IMPORTS SC_EDITOR_DLL_IMPORTS 
SC_UTILS_DLL_IMPORTS ON_DLL_IMPORTS)
+    foreach(scp ${SCIMPORTS})
+      set_property(TARGET step-g APPEND PROPERTY COMPILE_DEFINITIONS "${scp}")
+    endforeach(scp ${SCIMPORTS})
+  endif(HIDE_INTERNAL_SYMBOLS)
+endif (BRLCAD_ENABLE_STEP)
 
 CMAKEFILES(CMakeLists.txt)
 

Modified: brlcad/trunk/src/conv/step/util/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/conv/step/util/CMakeLists.txt      2020-09-24 16:16:45 UTC 
(rev 77212)
+++ brlcad/trunk/src/conv/step/util/CMakeLists.txt      2020-09-24 16:40:19 UTC 
(rev 77213)
@@ -6,41 +6,47 @@
 set(STEP_SCHEMA_FILE ${STEPCODE_DIR}/data/ap203/ap203.exp)
 add_definitions(-DAP203)
 
-set(lelem_LIBS
-  libbrep
-  libbn
-  libbu
-  steputils
-  stepeditor
-  stepdai
-  stepcore
-  ${OPENNURBS_LIBRARIES}
-  )
-
 GENERATE_SCHEMA_INPUTS(${STEP_SCHEMA_FILE} list_elements)
 
 set(list_elements_srcs ${express_srcs} list_elements.cpp)
-BRLCAD_ADDEXEC(list_elements "${list_elements_srcs}" "${lelem_LIBS}" NO_STRICT 
NO_INSTALL)
-add_dependencies(list_elements step-express-${SCHEMA_NAME}-list_elements)
-set_property(TARGET list_elements APPEND PROPERTY INCLUDE_DIRECTORIES 
"${list_elements_SCHEMA_OUT_DIR}")
 
-if (HIDE_INTERNAL_SYMBOLS)
-  set(list_elements_IMPORTS
-    BU_DLL_IMPORTS
-    BN_DLL_IMPORTS
-    RT_DLL_IMPORTS
-    WDB_DLL_IMPORTS
-    SC_CORE_DLL_IMPORTS
-    SC_DAI_DLL_IMPORTS
-    SC_EDITOR_DLL_IMPORTS
-    SC_UTILS_DLL_IMPORTS
+if (BRLCAD_ENABLE_STEP)
+  set(lelem_LIBS
+    libbrep
+    libbn
+    libbu
+    steputils
+    stepeditor
+    stepdai
+    stepcore
+    ${OPENNURBS_LIBRARIES}
     )
-  list(APPEND list_elements_IMPORTS ${list_elements_IMPORTS})
-  set_property(TARGET list_elements APPEND PROPERTY COMPILE_DEFINITIONS 
"${list_elements_IMPORTS}")
-endif (HIDE_INTERNAL_SYMBOLS)
 
-CMAKEFILES(CMakeLists.txt)
+  BRLCAD_ADDEXEC(list_elements "${list_elements_srcs}" "${lelem_LIBS}" 
NO_STRICT NO_INSTALL)
+  add_dependencies(list_elements step-express-${SCHEMA_NAME}-list_elements)
+  set_property(TARGET list_elements APPEND PROPERTY INCLUDE_DIRECTORIES 
"${list_elements_SCHEMA_OUT_DIR}")
 
+  if (HIDE_INTERNAL_SYMBOLS)
+    set(list_elements_IMPORTS
+      BU_DLL_IMPORTS
+      BN_DLL_IMPORTS
+      RT_DLL_IMPORTS
+      WDB_DLL_IMPORTS
+      SC_CORE_DLL_IMPORTS
+      SC_DAI_DLL_IMPORTS
+      SC_EDITOR_DLL_IMPORTS
+      SC_UTILS_DLL_IMPORTS
+      )
+    list(APPEND list_elements_IMPORTS ${list_elements_IMPORTS})
+    set_property(TARGET list_elements APPEND PROPERTY COMPILE_DEFINITIONS 
"${list_elements_IMPORTS}")
+  endif (HIDE_INTERNAL_SYMBOLS)
+endif (BRLCAD_ENABLE_STEP)
+
+CMAKEFILES(
+  CMakeLists.txt
+  ${list_elements_srcs}
+  )
+
 # Local Variables:
 # tab-width: 8
 # mode: cmake

Modified: brlcad/trunk/src/other/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/other/CMakeLists.txt       2020-09-24 16:16:45 UTC (rev 
77212)
+++ brlcad/trunk/src/other/CMakeLists.txt       2020-09-24 16:40:19 UTC (rev 
77213)
@@ -736,8 +736,9 @@
 set(SC_BUILD_SCHEMAS "" CACHE STRING "Disable schema builds for BRL-CAD" FORCE)
 # Lots of "libraries" associated with stepcode - use "stepcode" as the
 # stand-in for the build target var.
-THIRD_PARTY(stepcode SC stepcode sc_DESCRIPTION REQUIRED_VARS LEMON_EXECUTABLE
-  PERPLEX_EXECUTABLE BRLCAD_LEVEL3 ALIASES ${sc_ALIASES} RESET_VARS
+THIRD_PARTY(stepcode SC stepcode sc_DESCRIPTION
+  REQUIRED_VARS LEMON_EXECUTABLE PERPLEX_EXECUTABLE BRLCAD_LEVEL3 
BRLCAD_ENABLE_STEP
+  ALIASES ${sc_ALIASES} RESET_VARS
   EXP2CXX_EXEC EXP2CXX_EXECUTABLE_TARGET FLAGS NOSYS)
 if(BRLCAD_SC_BUILD)
   set(EXP2CXX_EXEC exp2cxx CACHE STRING "Express to C++ executable" FORCE)

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits

Reply via email to