Preheat the grill until hot. Meanwhile, trim off as much visible fat as possible from the top of the joint, and trim the underside too of any flaps of meat. Neaten the edges. Brush with 2 tablespoons of the oil, season and then place in a roasting tin. Brown under the grill for 10 minutes on each side. Preheat the oven to 170C/gas 3/fan 150C.
Make the marinade. Heat the remaining 3 tablespoons of oil in a saucepan and sauté the carrots, onion and celery over a high heat for about 10 minutes until nicely caramelised. Stir in the five-spice powder and honey. Cook for another minute or so. Pour in the soy sauce and wine and boil until reduced by half, about 10 minutes. Then add the stock and boil for 2-3 minutes more. Season with freshly ground black pepper.
Pour the hot marinade over the meat in the roasting tin and cover the top with butter papers or wet greaseproof paper. Roast for 2½ -3 hours until the meat is very tender when pierced with a fork. Allow the meat to cool to room temperature in the marinade.
Scrape the vegetables off the top of the meat, then put the meat on a tray and place a board on top. Weigh down with weights or large cans and chill overnight. Strain the marinade and chill it too – don’t worry if it doesn’t look very glamorous at the moment, it will look better.
When ready to complete the dish, cut the pork across the grain into ‘rashers’ about 2cm wide. Cut each rasher crossways in half. Heat a little oil in a non-stick frying pan until nice and hot, then sauté the pork slices in batches for about 5 minutes on each side until caramelised, spooning over the reserved marinade so they cook to a glossy glaze. As each batch is cooked, cover the pork and keep it warm.
At the end, any remaining marinade can be bubbled down slightly for a serving sauce (there will only be a little for drizzling). Pick a light fruity red, such as French grenache (garnacha in Spain), or a semillon from Australia or Chile to serve with this dish.