- }
-
- if (strstarts(d->lines[0], "LGPL")) {
- if (strchr(d->lines[0], '3'))
- return LICENSE_LGPLv3;
- else if (strchr(d->lines[0], '2')) {
- if (strreg(NULL, d->lines[0], "or (any )?later", NULL))
- return LICENSE_LGPLv2_PLUS;
- else
- return LICENSE_LGPLv2;
- }
+ /* This means "v2 only". */
+ if (streq(d->lines[0], "GPLv2"))
+ return LICENSE_GPLv2;
+ /* This means "v2 or above" at user's choice. */
+ if (streq(d->lines[0], "GPL (v2 or any later version)"))
+ return LICENSE_GPLv2_PLUS;
+ /* This means "v3 or above" at user's choice. */
+ if (streq(d->lines[0], "GPL (v3 or any later version)"))
+ return LICENSE_GPLv3;
+
+ /* This means "user chooses what version" */
+ if (streq(d->lines[0], "LGPL"))