TileDB icon indicating copy to clipboard operation
TileDB copied to clipboard

Make CMake safer for non-standard development environments

Open eric-hughes-tiledb opened this issue 4 years ago • 1 comments

CMake has a deficiency where it does not propagate toolchain files to external projects, nor cache entries related to these toolchains. To support a workaround, add propagate_cache_variables(), which takes a list of designated cache variables and constructs definitions to pass to external projects. Use this function for all the external projects in the present commit. Changed CONFIGURE_COMMAND in external projects to CMAKE_ARGS. CONFIGURE_COMMAND does not pass on certain CMake configuration parameters, mostly notably here any generator specified by -G. Remove some architectural specifications that not only assumed Visual Studio, but are passed to external projects by default if CONFIGURE_COMMAND is not used. Added definition CMAKE_POSITION_INDEPENDENT_CODE=ON, which abstracts the -fPIC compiler flag.


TYPE: BUG DESC: Make CMake safe for non-standard development environments

eric-hughes-tiledb avatar May 11 '21 16:05 eric-hughes-tiledb

@eric-hughes-tiledb this is safe to close right?

Shelnutt2 avatar Aug 09 '22 11:08 Shelnutt2