As others have said, making a reaction to grind rock into sand would be the simplest non-cheaty way of doing it.
On the realism side of things, glass is simply amorphous silicon dioxide (silica, SiO2), which is chemically the same as quartz. However three things mean it would be easiest and make the most sense for it to work for any rock:
Silica is the main constituent of what we call "glass", however pure silica glass is very rare in industry, most glass you see today will have large amounts of other metals oxides added, such as sodium, potassium, titanium, aluminium, as well as some compositions having measurable amounts of chlorine or boron or other non-metals.
Secondly, a large proportion of rocks other than quartz are rich in silica, although not to the same degree. Many of them are still pure enough to function to create something we would call "glass". Could also make a reaction to try to leech out the other minerals thuogh chemical means if having 50% silica content in your glass bothers you, or create a reaction which would turn a bag of pure sand and a boulder into 2 bags of "low grade sand" which can not be further diluted.
Thirdly, the category of "glasses" is actually quite a large and diverse one, with silica glass being the one everyone knows about and sees every day. It is possible to create alumina (aluminium oxide) glasses, phosphate glasses and many others. Taking an even broader definition of "glass", and almost any rock or mineral, if you can melt it and cool it rapidly (to stop it forming crystals) can form something classed as a form of glass.
If you dont like the idea of grinding rocks into sand for your glass, you could create a workshop made up of a barrel and a large amount of sand bags (so that it can be difficult to gather the sand from traders alone), which then becomes a font of infinite sand with the "fill bag with sand from barrel" task.