In a small bowl stir together the spices until combined. Stir in the olive oil to wet the spice mixture and make it into a paste.
Pat the ham dry with paper towels. Score the fat on the ham in a pattern of 1-inch diamonds, cutting ¼-inch deep.
Add the ham to a large roasting pan then apply the rub all over the ham so the ham is evenly coated. Cook until thoroughly heated, about 2 to 2 ½ hours, or 10 minutes per pound. The internal temperature of the ham should read 120ºF (49ºC).
Remove the ham from the oven and let rest for 15 minutes. Cut a few slices off the bottom to create a flat base and transfer to a serving platter and slice. To slice the ham, make vertical cuts perpendicular to the bone with a sharp knife