A multi-input multi-output (MIMO) radar system, unlike a standard phased-array radar, can transmit multiple probing signals that are correlated or uncorrelated with each other. This waveform diversity offered by the MIMO radar is the main reason for its superiority over the standard phased-array radar. An interesting current research topic in MIMO radar is the optimal synthesis of the transmitted waveforms. Recently proposed techniques for MIMO radar waveform synthesis have focused on the optimization of the covariance matrix R of the waveforms, as optimizing a performance metric directly with respect to the waveform matrix is a more complicated operation. Given an R, the problem becomes that of determining a signal waveform matrix X whose covariance matrix is equal or close to R, and which also satisfies some practically motivated constraints. We propose a cyclic optimization algorithm for the synthesis of such an X, which (approximately) realizes a given optimal covariance matrix R under various practical constraints, and which also has good auto- and cross- correlation properties in time, if desired. A number of numerical examples are presented to demonstrate the effectiveness of the proposed algorithm.