how to make calendar by external time bace

I have a 1 Hz accurate time base. how can make a clock and calendar use interrupt on uno?

Set a 32 bit counter variable to some offset of a large number of seconds since a given epoch (say, 1 Jan 1970)
Use the 1Hz interrupt to increment the counter.
There are time libraries to handle the calendar.

Google is your friend.