hace tiempo из той же серии, как hace frío, hace calor и т.п.
На одном из форумов я встречала легенду о происхождении подобной конструкции: из-за того, что в прежние времена предполагалось, что бог делает время или погоду, соответственно в речи из-за этого сохранился глагол hace (ед. число, 3 лица) + объект/ы действия. А те явления погоды, которые люди могли наглядно ощутить, они стали использовать с глаголом estar (предполагая, что явления существуют сами по себе), например, está lloviendo, está nevando и т.д.
В других источниках указано, что hace в данном контексте становится грамматически безличным, как глагол hay, т.е, например: Encima de la mesa hay 5 tazas. (На столе - 5 чашек. Глагол есть/находятся/имеются можно пропустить при переводе).
Что касается времени глагола hacer, то для погоды оно может меняться, например, так:
hacía sol cuando llegamos; ayer hizo mal tiempo (здесь tiempo - погода) и т.д.
Что касается tiempo в значении времени, то:
hacía tres años que no nos veíamos. - использован имперфект (в данном случае - оба глагола). Имперфект может использоваться для описания "фоновых" действий, в контексте которых происходит некоторое "предметное" действие. Здесь оно пропущено, но далее можно о нем рассказать, продолжив эту историю.
На примере про погоду:
hacía sol (фон - имперфект) cuando
llegamos (предметное событие - гл. в прош. вр.)
¡
Hace años que no lo veo! Si lo encuentro no lo reconozco. - Действие по смыслу уже не "присказка", а как бы само по себе "предметное". Поэтому hace стоит в настоящем времени, а не в имперфекте.
Второй глагол уже ставится по ситуации:
Брак еще существует:
¿Cuánto tiempo hace que te casaste? Как давно ты женат?
¿Desde cuándo
estás casado? С какого времени ты женат? / Давно ты женат?
Уже был развод:
¿Cuánto tiempo
estuviste casado? Как долго ты был женат?
При вопросе ¿Cuando te casaste? Когда ты женился?
В ответ может ожидаться дата, например - женился в 18 лет.
Надеюсь, что объясняю более-менее понятно и не запутала еще больше