Process the babel options to adapt the options to avoid some issue after transformation.
@param   {Object} options current options for babel
@param   {String} code    code associated
@returns {Object} options really used during transformation
function(options, code) {
    var rst = JSON.parse(JSON.stringify(options)); // Let's clone options

    // In the case were source maps are activated, we need to make some verifications

    if (rst.sourceMaps) {

        // 1. If we're processing a block of code, we need to ensure that the block will have a specific source name
        if (code) {
            rst.sourceFileName = processSourceFileName(rst.sourceFileName, code);
        }

        // 2. If the sourceMap options equals to "inline" or "both", we need to set it to true before processing babel transform
        // otherwize, the sourceMapUrl will be added by babel to the generated code of each file / block of code.
        // We will take care to handle the "inline" or "both" specification when the concatenated code has been fully generated
        if (rst.sourceMaps === "inline" || rst.sourceMaps === "both") {
            rst.sourceMaps = true;
        }
    }

    return rst;
}