Use dmlc-core as a cmake project #7701
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About the problem:
dmlc-corehas cmake generated build_config.h which enablesDMLC_LOG_STACK_TRACEin casecxxabi.handexecinfo.hfiles are present on the system. This feature (LOG_STACK_TRACE) is used indmlc/logging.hwhich is used in tvmruntime/graph/graph_runtime.cc(viatvm/runtime/packed_func.h).In order to build TVM runtime on a systems which do not have
execinfo.h(e.g. OpenWRT) we should not automatically enableDMLC_LOG_STACK_TRACE.This check will be done if we use
dmlc-coreas a cmake module.Currently TVM build simply points to
dmlc-coresrcandincludefolders but does not use dmlc-core cmake logic during the build.Instead of that we should use
dmlc-coreas another cmake project.For example xgboost already using dmlc-core as a cmake project
To verify that the fix works.
/usr/include/execinfo.hto smth elseThe build should work.