The first style looks very Java-esq. That is probably where it starts. The other nice thing about the first example is that you don't have to care, as a consumer of the API, that the thing you are getting is a singleton. Rather, it looks more like you are just making a new object.
The second one makes it a bit more apparent that the thing you are making is a singleton.
The benefit of the first is that you can de-singletonify your code/library in the future and (hopefully) not break anyone because the method signature remains the same. You can do it with the second, but it will be less idiomatic.