only feasible way, the other is to duplicate the function tempnam2 code into each component, did not think it was the DRY way