It’s quite common these days for people to get confused over the apostrophe in possessive constructions. I’ve worked with style guides, written by professional editors, that insist that “girls school” is correct in English. The notion is that it is an attributive construction, similar to “dog bowl” or “fish fry”, in which the type of thing is specified by another noun.
This is incorrect though and can easily be demonstrated. Do this if you’re confused or don’t know whether to use an apostrophe. Simply replace the word in question with “men” or “men’s”.
If you would write “men school”, you are illiterate. You must write “men’s school”. So you must also write “girls’ school”.
The difference between the two is not immediately clear. This is because English nouns can refer to either a particular thing or group of things, or to a class of things. So “man” can mean “that man there” or it can mean “the thing in the world that is called a man”. Contrast “a man thing”, which is a thing to do with men, with “a man’s thing”, which is usually a thing belonging to a particular man (although one can of course say “a man’s thing” with the first meaning also). And it’s not that the generic thing must be in the singular. We can say “dogs bark” and we mean the class of things called dogs, not particular dogs. But generally in attributive constructions, one does use the singular: “dog bowl” not “dogs bowl”, “life cycle” not “lives cycle”, “drug paraphernalia” not “drugs paraphernalia”, “kitchen hand” not “kitchens hand”.
So I think you could motivate “girl school” or “boy school”, although neither is good English. But “girls school” is simply incorrect. Don’t write it.