Непоздно, но мне нужно скомпилить именно hmac.c
HMAC функции находятся внутри libcrypto, это такая огромная свалка всяких криптографических функций, которая годами набиралась, если тебе нужны только функции HMAC и никакие больше, идёшь в репозиторий openssl, клонируешь его и собираешь из исходников указав скрипту-конфигуратору параметры no-md2, no-md4, no-m5 и все остальные модули, перечисленые в документации по сборке openssl, которые тебе не нужны. Когда конфигуратор завершит работу, запускай компил, далее уже в студии, как Снус написал прописываешь пути до папок ...\openssl\include и ...\openssl\lib, в строку с перечисленными библиотеками добавляешь libcrypto.lib, чтобы ошибок линкера не было (можно в принципе и в коде проекта указать через прагму путь до статической библиотеки, но это вообще нежелательная фигня) и уже компилишь свой проект. И да, не забудь динамическую библиотеку libcrypto-[версия].dll в свой собранный проект скопировть, иначе он не будет знать, откуда тянуть символы и при запуске ошибку выплюнет.