This is absolutely lush, and well worth the time it takes!
Let them cook gently to soften and go translucent. Meanwhile peel the garlic, and either chop, crush or grate it - I always use a crusher, but I know other people have other ways. Add this to the onion and oil, and again, allow to cook gently for a few minutes. Now add the tinned tomatoes and about 1/3 tin of water. Stir thoroughly and bring to a simmer. Cover, and let it simmer for about 45-50 minutes, stirring occasionally.
Then add the half-tub of cream cheese and stir thoroughly to mix. Delicious with pasta, either as is, or as a pasta bake. I also made a roast vegetable bake with it earlier in the week, which was lush!