Возможно ли сделать динамический select?
"Возможно ли" - да, можно.
Но если надо только это - то лучше наговнокодить на jQuery. Angular тут как пушкой по воробьям.
Мы наговнокодили такой плагинчик:(function($) {
    var defaults = {
        columns: 3,
        classname: 'column',
        min: 1,
        colsize: 16
    };


    $.fn.autocolumnlist = function(params) {

        return this.each(function() {
            var options = $.extend({}, defaults, params);
            var els = $(this).children('li');
            var dimension = els.size();

            if (options.columns == 'auto') {
                options.columns = Math.ceil(dimension / options.colsize);
            }

            if (dimension > 0 && options.columns > 1) {
                var elCol = Math.ceil(dimension / options.columns);
                if (elCol < options.min) {
                    elCol = options.min;
                }
                var start = 0;
                var end = elCol;

                for (i = 0; i < options.columns; i++) {
                    // Add "last" class for last column
                    if ((i + 1) == options.columns) {
                        els.slice(start, end).wrapAll('<div class="' + options.classname + ' сlast" />');
                    } else {
                        els.slice(start, end).wrapAll('<div class="' + options.classname + '" />');
                    }
                    start = start + elCol;
                    end = end + elCol;
                }
            }
        });
    };
})(jQuery);
Применяется так:<ul class="need_to_columns">
    <li></li>
    ...
</ul>$('.need_to_columns').autocolumnlist({
        columns: 3,
        classname: 'column'
    });