Both texts in the other answer are great texts, and the Guruswami, Rudra, Sudan book is more based in the TCS approach to coding theory, which may be relevant to the potential reader. The books below have been split into the "mainly information theory" and "mainly coding theory" subsets.
For mathematical rigour, the following text
Csiszar and Korner: Information Theory: Coding Theorems for Discrete Memoryless Systems (1981)
and its updated second edition
Csiszar and Korner: Information Theory: Coding Theorems for Discrete Memoryless Systems (2011)
has not been surpassed in my opinion. For example have a look at the Network Information Theory chapter (Chapter 3 in the first edition) and compare with Cover and Thomas (which is itself a great book to learn/teach from but not really that rigorous).
Another text which is dated now but is really nice is
A modern rigorous text mainly focused on the algebraic approach:
Ling and Xing: Coding Theory
Somewhat dated, but a classic and rigorous:
MacWilliams and Sloane: Theory of Error-Correcting Codes
Finally, a Hybrid text which covers both bases that is rigorous and an excellent textbook is
Roman: Coding and Information Theory