Это выражение гостеприимства, возможно пошло от тех времен, когда гости с дальнего пути зашли, их обогрели, покормили, и дали что-то с собой, потому что им обратно идти далеко и долго, ведь не было нормального транспорта и дорог.
Зато можно было рассчитывать, что сам если поедешь или пойдешь, то и тебя примут так же.
Сейчас гости-родственники или желанные гости, приехавшие издалеко и бывающие редко, получают подарки, и это часто что-то самое лучшее и местное, чего нет у них там. Ну и дарят если что-то лежит и просто лежит дома, никому не пригодилось. Почему бы и нет? Посуда там, плед, парфюм.
А когда к вам в гости забежала подружка, то вы ей сделаете попить, можете и испечь чего-то, если та с пустыми руками. Подарок может быть в случае опять же сбыта лишних вещей, но специально всегда дарить что-нибудь, так найдутся те, кто по 10 раз зайдут за сутки)