It's logrotate(8).

In /etc/crontab, this line:

25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

...uses run-parts(8) to run all the scripts in /etc/cron.daily, including /etc/cron.daily/logrotate, which invokes /usr/sbin/logrotate with the configuration file /etc/logrotate.conf, which includes the config files in /etc/logrotate.d, including /etc/logrotate.d/rsyslog... which includes a directive to rotate /var/log/mail.log.