The problem is that the end of software is not as distinct as it's start. On a legacy device old software might run just fine long after the developers have moved on and forgotten about it. The exact end of the software's life (or life cycle) depends largely on the attitudes of the person naming the software's demise.
The choice of word(s) reflects a great deal on the attitude of the community, the developer and the model of deployment. For example a commercial software company might talk of "end of production" as if it were a physical product (which if sold mainly on CD/DVD it might seem to be) whereas a company that makes more money from support talks about the "end of life" or "end of support" time frame.
Thus there are terms that talk about ongoing support and bugfixes, ongoing development (beyond just bugfixes) and just general appropriateness for any given task. Which is why you get a range of answers from withdrawn (no longer offered as a product) to Obsolete (something better exists, like an upgrade or a better solution).
When the software is still available but it has reach "End of Life" (de facto term) where I have worked we often call it "Retired" which means that you can use it if you want but we accept no bug reports and you do so at your own risk. Sometimes it's "Retired / Replaced with" sometimes written as "Retired/Obsolete. Upgrade to NewSoftwareTitle". However that suggests that there is an upgrade path albeit a nonstandard one.
Some firms are fond of "End of Support" or variants like that. In which case "Superseded by" is commonly given if there is something else.
The open source community sometimes lists software as "abandoned" which means that there is no one maintaining it anymore. Or if the developer is taking their time to put anything out - it might be described as "inactive" which can be effectively the same thing. This however indicates something entirely different to software that has been shelved or withdrawn which suggests more that the developers are the ones calling the shots, so to speak.