Morality, like all social constructs (I.e., like almost everything) is structured by the society is resides in, mostly non-deliberately. Insofar as morality is one construct at all. That word means a lot of different things to a lot of different people, and a lot of things which clearly bear on morality aren't marked as such. That doesn't mean you just embrace cultural relativism. Surely it's possible to critically and politically engage with the various moralities you find out in the world, although Foucault's work (and post structuralism in general, really) kind of begs the question of what perspective you do that from. He wouldn't have committed to a moral code, in my opinion (and I'm talking out of my ass even more so now than I have been) because it's such an inflexible thing to do, and typically it's an uncritical thing to do (I.e., you just accept a socially constructed position without fully appreciating how it came about it what it does, though of course you don't necessarily make that mistake). Better to be primarily an analyst or a historian of modernity as Foucault called himself, taking pragmatic but well researched positions where political issues you find significant arise.