*The pork needs to marinate for several hours but preferably overnight.
Juice the lemon and limes; set aside. Juice the grapefruit and orange; set aside.
Place pork shoulder in a large bowl.
In a food processor, combine the garlic cloves, salt, oregano, turmeric, and cilantro with the lemon juice and lime juice. Combine until mixture has a texture similar to a puree.
Combine the orange juice and grapefruit juice with the mixture to create a mojo marinade.
Pour marinade over the pork and massage well using clean hands.
Cover bowl with plastic wrap and place in the refrigerate for at least 8 hours or up to 24 hours. While marinating, turn pork over two separate times and return to refrigerator.
At least an hour before cook time, remove the pork from the refrigerator. Remove plastic wrap and discard.
Preheat oven to 250 degrees F. Line a sheet pan with aluminum foil.
Remove pork from bowl and reserve marinade. With a clean paper towel, pat dry the pork skin.
Place pork on the lined sheet pan and pour the marinade in the bottom of sheet pan. Cover pork loosely with an aluminum foil tent.
Place pork in oven and cook for at least 6 hours or up to 8 hours, until internal temperature reaches 220 degrees F and the meat is fork tender.
Remove roast from oven. Increase oven temperature to 450 degrees F.
Remove aluminum foil tent and discard. Return uncovered roast to the oven for an additional 15 to 20 minutes, or until the skin is golden and crispy.
Remove from oven and let cool.
Once the roast is cool enough to touch, remove the crispy skin and set aside.
With two forks using a crisscross motion, pull the pork meat apart. Pour any additional pan drippings over the roast.
Cut the crispy skin into smaller pieces skin and place on top of the roast.